题目:5-7定义一个Cat类,拥有静态数据成员numOfCats,记录Cat的个体数目;静态成员函数getNumOfCat(),存取numOfCat。设计程序测试这个类,体会静态数据成员和静态成员函数的用法。
#include <iostream>
using namespace std;
class Cat
{
public:
Cat(int age):itsAge(age){numOfCats++; }
virtual ~Cat() { numOfCats--; }
virtual int GetAge() { return itsAge; }
virtual void SetAge(int age) { itsAge = age; }
static int GetnumOfCats() { return numOfCats; }
private:
int itsAge;
static int numOfCats;
};
int Cat::numOfCats = 0;
void TelepathicFunction();
int main()
{
const int MaxCats = 5;
Cat *CatHouse[MaxCats]; int i;
for (i=0;i<MaxCats;i++)
{
CatHouse[i] = new Cat(i);
TelepathicFunction();
}
for (i=0;i<MaxCats;i++)
{
delete CatHouse[i];
TelepathicFunction();
}
return 0;
}
void TelepathicFunction()
{
cout << "有 " << Cat::GetnumOfCats() << " 只猫~~\n";
}