如何* .INL文件模板类中定义模板功能
问题描述:
我写在* .HPP文件模板声明,并在从* .HPP联如何* .INL文件模板类中定义模板功能
就这样* .INL文件的“定义”:
//*.hpp
template <typename T1, typename T2>
class SomeClass
{
public:
void someMethod();
};
//*.inl
template <typename T1, typename T2>
void SomeClass<T1, T2>::someMethod()
{
}
但如何在* .inl文件中的模板类内写入额外的模板方法?
//*.hpp
template <typename T1, typename T2>
class SomeClass
{
public:
void someMethod();
template <typename E>
void extraTypedMethod(E & e);
};
//*.inl
template <typename T1, typename T2>
void SomeClass<T1, T2>::someMethod()
{
}
//how can I here define extraTypedmethod?
答
这是你的定义:
template <typename T1, typename T2>
template <typename E>
void SomeClass<T1, T2>::extraTypedMethod(E & e)
{
}