C++ 中模板类的模板成员函数在类外定义

因为很多书都没讲到这种情况, 曾经有这个问题但一直没答案,所以我一直以为模板类的模板成员函数只能在类内定义,直到我在某个开源代码里看到原来要加两个 template<>  ............ (T_T)

template<typename T1>
class MyObjectT
{
public:
    template<typename T2>
    void Foo(T2 v);
};

template<typename T1>
template<typename T2>
void MyObjectT<T1>::Foo(T2 v)
{
    cout << "Foo(" << v << ")" <<  endl;
}

猜你喜欢

转载自www.cnblogs.com/Merlyn7/p/9565218.html