大神
#include <iostream>
using namespace std;
class Cat
{
public:
Cat(){HowManyCats++; } //构造函数初始化数据成员的同时,将HowManyCats进行加1操作
~Cat() { HowManyCats--; } //每只猫对象生存期结束时,调用析构函数,析构函数将HowManyCats进行减1操作
static int GetHowMany(); //静态成员函数
private:
static int HowManyCats; //定义静态数据成员HowManyCats
};
int Cat::HowManyCats = 0;
void TelepathicFunction();
int main()
{
int MaxCats;
cin>>MaxCats;
Cat *CatHouse[MaxCats];
int i;
for(i =0;i<MaxCats;i++)
{
CatHouse[i] = new Cat;
TelepathicFunction();
}
for(i =0;i<MaxCats;i++)
{
delete CatHouse[i];
TelepathicFunction();
}
return 0;
}
void TelepathicFunction()
{
cout << "There are " << Cat::GetHowMany() << " cats alive!"<< endl;
}
这个里面的Cat::GetHowMany()应该怎么改写
static int GetHowMany(){return HowManyCats;}
这样写就可以了。
谢谢