如何将模板化类'this'指针传递给成员函数

时间:2016-04-26 05:41:33

标签: c++

如何将模板化的类'this'指针传递给该类的成员函数,即

template <typename T>
class A
{
....
process(A<T>* a) {};
someOtherFunction() {process(this)};
....
}

1 个答案:

答案 0 :(得分:1)

像这样:

template <typename T>
class A
{
    static void process(A* a) {}
    void someOtherFunction() {process(this)};
}

您无需指定Tprocess可以static,因为它已明确传递this。但你可以隐含地让它发生:

template <typename T>
class A
{
    void process() { A* a = this; }
    void someOtherFunction() {process()};
}