#include <iostream>
using namespace std;
class Base
{
public:
virtual void P()
{
cout<<"Base::P"<<endl;
}
};
class Dev : public Base
{
public:
virtual void P()
{
cout<<"Dev::P"<<endl;
}
};
typedef void (Base::*Func)();
int main ()
{
Func pfunc = &Base::P;
Dev d;
(d.*pfunc)();
return 0;
}
调用的是Dev::p