【发布时间】:2011-09-26 17:33:48
【问题描述】:
我有一个带有 int 和模板模板参数的模板类。 现在我想专门化一个成员函数:
template <int I> class Default{};
template <int N = 0, template<int> class T = Default> struct Class
{
void member();
};
// member definition
template <int N, template<int> class T> inline void Class<N, T>::member() {}
// partial specialisation, yields compiler error
template <template<int> class T> inline void Class<1, T>::member() {}
谁能告诉我这是否可行以及我在最后一行做错了什么?
编辑:我要感谢大家的意见。由于我还需要对某些 T 进行专门化,因此我选择了 Nawaz 建议的解决方法并专门化了整个类,因为无论如何它只有一个成员函数和一个数据成员。
【问题讨论】:
标签: c++ templates template-specialization