Accessing static members using non-static member functions. : static « Class « C++






Accessing static members using non-static member functions.

  
#include <iostream>
using namespace std;
class Cat
{
public:
   Cat(int age):itsAge(age){count++; }
   virtual ~Cat() { count--; }
   virtual int GetAge() { return itsAge; }
   virtual void SetAge(int age) { itsAge = age; }
   virtual int GetHowMany() { return count; }


private:
   int itsAge;
   static int count;
};

int Cat::count = 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 << CatHouse[i]->GetHowMany();
      cout << CatHouse[i]->GetAge()+2;
      delete CatHouse[i];
      CatHouse[i] = 0;
   }
   return 0;
}
  
    
  








Related examples in the same category

1.Static member variables and functions
2.static functions and ID numbers for objects
3.Using a static data member in a class
4.Static member data.
5.Accessing static members without an object.
6.Static member functions.
7.static members in classes
8.Calculate salary using static members.
9.static counter
10.Update static field in member method
11.Reference static method along with class name
12.static field is shared among instances