#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

相关文章: