demo_object_pointer_4.cpp

来自「对于一个初涉VC++的人来书」· C++ 代码 · 共 32 行

CPP
32
字号

//***************************************************

#include <iostream.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,Y;
};

void main()	//主函数
{
	Point A[2]={Point(1,2),Point(3,4)};	//声明对象数组A
	Point *p=A;	//声明对象指针并初始化

//	A[0]=Point(1,2);
//	A[1]=Point(3,4);

	int (Point::*p_GetX)()=Point::GetX;	//声明成员函数指针并初始化
	int (Point::*p_GetY)()=Point::GetY;	//声明成员函数指针并初始化
	
	cout<<A[1].GetX()<<","<<A[1].GetY()<<endl;   	       //1.对象名访问成员函数
	cout<<(A[1].*p_GetX)()<<","<<(A[1].*p_GetY)()<<endl;   //1.对象名访问成员函数
	cout<<(p->GetX)()<<","<<p->GetY()<<endl;	   //2.对象指针访问成员函数
	cout<<((*p).GetX)()<<","<<(*p).GetY()<<endl;   //2.对象指针访问成员函数
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?