我有一个模板类,唯一的模板参数是类型名。
template<typename T>
class Reader{
...
}
现在我想为每个整数类型专门化它,比如:
template<typename T - integral>
class Reader{
//another code
}
我怎样才能做到这一点?
最佳答案
你可以只是一个额外的默认 bool 参数:
template<typename T, bool IsIntegral = std::is_integral<T>::value>
class Reader{ // primary template, used for non-integrals
...
}
template<typename T>
class Reader<T, true> { // specialization for integral types
...
}
关于c++ - 为几个可能的参数(类型名)专门化类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12467279/