类成员指针(90)

先看代码:++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
typedef void (Baseclass::*ptr)(int);//我先指定ptr是一个返回为void的函数指针
void itdemo(Baseclass* p, ptr fun) {
(p->*fun)(2);//调用类成员函数指针必须指定类对象
}
void main()
{
Driverclass d;
Baseclass b;
itdemo(&d, &Baseclass::demo);//测试后发现,支持多态,估计是因为虚函数指针变化了。
system("pause");
return;
}
// //