#include<iostream>
using namespace std;
class Node
{
public:
Node(){};
void print()
{
cout<<"你好!"<<endl;
}
void print1()
{
cout<<"我好!"<<endl;
}
void print2()
{
cout<<"他好!"<<endl;
}
};
typedef void(Node::*A)();//使用typedef声明一个成员函数指针类型A,该类型的指针指向Node类的成员函数print,该函数不返回值且没有参数
int main()
{
Node *n=0;
A a[3]={&Node::print,&Node::print1,&Node::print2};//用类型A声明一个a成员函数指针数组,并赋值
A p=&Node::print;
A p1=&Node::print1;
A p2=&Node::print2;
(n->*p)();
(n->*p1)();
(n->*p2)();
return 0;
}