在我的课,如果我想指向类的成员,指向类的成员
struct S
{
static int get();
int do_something();
int x;
};
我这样做,
int (*p)() = S::get;
不幸的是这并不适用于非静态成员
int (*p)() = S::do_something; // error
因为,静态成员函数是一个普通的功能,从我来到下方围绕该帖指出,非静态成员函数的n也是一个普通的函数,为什么它不起作用?这是什么意思?
(9.2/10)[注:一个非静态成员函数的类型是普通 功能类型和非静态数据成员的类型是一个普通的 对象类型。没有特殊的成员函数类型或数据成员 类型。 ]
这是在这里回答:http://stackoverflow.com/questions/439540/function-pointer-to-class-member-function-problems –
必须阅读理解的概念:[指向成员函数](http ://www.parashift.com/c++-faq-lite/pointers-to-members.html) –