相关代码 |
|
/* 范例:13-3 */ #include class A { public: A():a(7){} int a; void fun1(){cout int fun2(int i,char ch) { cout return (3*i); } }; void main() { int (A::*pm1) = &A::a; // 成员指针pm1指向数据成员a void (A::*pm2)()=A::fun1; // 成员指针pm2指向成员函数fun1() int (A::*pm3)(int,char) = A::fun2; /* 成员指针pm2指向成员函数fun2() */ A obj; (obj.*pm2)(); // 调用成员函数 obj.*pm1 = 30; // 设定数据成员a cout A *ptr = new A; (ptr->*pm2)(); cout *pm1 cout *pm3)(3,'M') delete ptr; getchar(); } 程序执行结果: test 30 test 7 3 M 9
相关资源 |
|