1. 程式人生 > >類的靜態資料成員和類的靜態成員函式

類的靜態資料成員和類的靜態成員函式

class Point 
{
public:
	Point (int xx=0,int yy=0){X=xx;Y=yy;CountP++};
	Point (Point &p);
	int GetX(){return X;}
	int GetY(){return Y;}
	static void GetC(){cout<<"Object id="<<CountP<<endl;}  //靜態成員
	~Point (){CountP--;};

private:
	int X ,Y;
	static int CountP;   //靜態資料成員
};
Point::Point(Point &p)
{
	X =p.X;
	Y =p.Y;
	CountP++;
}

int Point::CountP=0;
int main()
{
	Point::GetC();   //當GetC()為宣告為靜態時,程式報錯
	Point A(4,5);
	cout<<"point A"<<A.GetX()<<","<<A.GetY();
	A.GetC();  //物件名引用
	Point B(A);
	cout<<"point B"<<B.GetX()<<","<<B.GetY();
	Point::GetC();//輸出物件號  類名引用
}