我得到了{'James Johnson': ['3', '6'], 'Bob Smith': ['7', '9', '4']}
,它是模板化的,并希望使用ArrayItem类继承它。由于我想将它们用作内存的模板,我希望ArrayItem类知道我们有哪种类型。所以我想专门构建一些Template值的构造函数,例如long long。
BaseType
hpp应该是这样的:
template<typename T>
class ArrayItem : public BaseType<T>
{
public:
inline ArrayItem(T& t);
inline ETypes getType();
private:
ETypes m_type;
};
但是我如何在这里进行专业化?
template <typename T>
ArrayItem<T>::ArrayItem (T& t): BaseType(t)
{
}
template <>
ArrayItem<long long>::ArrayItem(long long& t) : BaseType<long long>(t) // this
{
m_type = INT;
}
template<typename T>
inline ETypes ArrayItem<T>::getType()
{
return m_type;
}
答案 0 :(得分:1)
除了为典型案例提供PFUser
的模板参数之外,您对我的看法正确。
这是一个简单的演示:
BaseType