如何* .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) 
{ 
}