4elist1503.cpp

来自「《21天学通C++》附盘的原代码。书上的每个例子在这里都有相应的C语言程序。」· C++ 代码 · 共 43 行

CPP
43 行
字号
//Listing 15.3 private static data members

#include <iostream>
using std::cout;

class Cat
{
public:
	Cat(int age):itsAge(age){HowManyCats++; }
	virtual ~Cat() { HowManyCats--; }
	virtual int GetAge() { return itsAge; }
	virtual void SetAge(int age) { itsAge = age; }
	virtual int GetHowMany() { return HowManyCats; }


private:
	int itsAge;
	static int HowManyCats;
};

int Cat::HowManyCats = 0;

int main()
{
	const int MaxCats = 5; int i;
	Cat *CatHouse[MaxCats];
	for (i = 0; i<MaxCats; i++)
		CatHouse[i] = new Cat(i);

	for (i = 0; i<MaxCats; i++)
	{
		cout << "There are ";
		cout << CatHouse[i]->GetHowMany();
		cout << " cats left!\n";
		cout << "Deleting the one which is ";
		cout << CatHouse[i]->GetAge()+2;
		cout << " years old\n";
		delete CatHouse[i];
		CatHouse[i] = 0;
	}
	return 0;
}

⌨️ 快捷键说明

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