//"pointer1.h"
class Point
{
public:
Point (int xx=0,int yy=0){X=xx;Y=yy;}
int GetX() { return X;}
int GetY() { return Y;}
private:
int X;
int Y;
};
#include<iostream.h>
#include"pointer1.h"
//访问对象的公有成员函数的不同方式。注意通过指向成员的指针也只能访问到公有成员
void main()
{
Point A(4,5);
Point *p1=&A;//声明对象指针并初始化
int (Point::*pGetX)()=Point::GetX;//声明成员函数指针并初始化
cout<<(A.*pGetX)()<<endl;//使用成员函数指针访问成员函数
cout<<(p1->GetX)()<<endl;//使用对象指针访问成员函数
cout<<A.GetX()<<endl;
}