#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