staticmember.cpp

来自「《24学时精通c++》的光盘内容」· C++ 代码 · 共 41 行

CPP
41
字号
 //Listing 20.1 static data members

 #include <iostream>

 

 class Cat

 {

 public:

     Cat(int age = 1):itsAge(age){HowManyCats++; }

     virtual ~Cat() { HowManyCats--; }

     virtual int GetAge() { return itsAge; }

     virtual void SetAge(int age) { itsAge = age; }

     static int HowManyCats;

 

 private:

     int itsAge;

 

 };

 

 int Cat::HowManyCats = 0;

 

 int main()

 {

     const int MaxCats = 5;

     Cat *CatHouse[MaxCats];

     int i;

     for (i = 0; i<MaxCats; i++)

         CatHouse[i] = new Cat(i);

 

     for (i = 0; i<MaxCats; i++)

     {

         std::cout << "There are ";

         std::cout << Cat::HowManyCats;

         std::cout << " cats left!\n";

         std::cout << "Deleting the one which is ";

         std::cout << CatHouse[i]->GetAge();

         std::cout << " years old\n";

         delete CatHouse[i];

         CatHouse[i] = 0;

     }

     return 0;

 }

⌨️ 快捷键说明

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