很诡异
class A{
public:
void func1();
void func2();
public:
//指向成员函数的成员变量
public:
void (A::*func)();
};
void A::func1()
{
int a = 1 + 1;
}
void A::func2()
{
int a = 2 + 2;
}
int main(int argc, char ** argv)
{
A *a = new A;
a->func = &A::func1;//此处好像不能加任何括号,否则编释报错
a->*(a->func)();//调用
}
}