我希望通过使用BOOST_STATIC_ASSERT帮助用户了解我的一些模板化代码,让他们知道他们使用的是一种不兼容的类型,其编译错误信息比当前使用不兼容类型的怪物更简单。< / p>
这个例子有点太复杂了,无法在这里复制,但希望这能抓住我想要的本质:
我的问题是如何格式化最后一行,即“模板模板”?
template <typename P1, int P2, typename P3>
class InterestingType
{
}
template<typename T>
struct is_interesting_type{
static const bool value = false;
};
template<template<typename,int,typename> typename InterestingType> //No idea how to format this..
struct is_interesting_type{
static const bool value = true;
};
答案 0 :(得分:3)
将代码更改为
template <typename P1, int P2, typename P3>
struct is_interesting_type<InterestingType<P1, P2, P3> >{
static const bool value = true;
};