![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
До этого момента предполагалось, что все данные находящиеся в классе должны принадлежать объектам класса, причём какое-либо данное должно было принадлежать конкретному объекту класса. Но иногда возникает необходимость в получении информации о накоплении данных программой. (например о количестве объектов класса). Эту задачу решают статистические переменные-члены. Эти переменные используются всеми объектами класса, то есть можно сказать, что они принадлежат классу, а не объекту класса. Их можно рассматривать как нечто среднее между глобальными переменными и переменными-членами.
#include<iostream.h>
Class Cat
{
public:
Cat(int age):itsAge(age){HayMenyCats++;}
virtual ~Cat(){HayMenyCats--;}
virtual int GetAge() {return itsAge;}
virtual void SetAge(int age){itsAge=age;}
Static int HayMenyCats;
private:
Int itsAge;
};
int Cat::HayMenyCats =0;
Int main(void)
{
const int MaxCat=5;
Int i;
Cat *CatHouse[MaxCat];
for(i=0;i<MaxCat;i++)
CatHouse[i]=new Cat(Maxcat-i);
for(i=0;i<MaxCat;i++)
{
cout<<"сейчас у нас ";
cout<<Cat::HayMenyCats;
cout<<" кота.\n";
cout<<"удалим кота, возраст которого ";
cout<<CatHouse[i]->GetAge()<<" года \n";
delete CatHouse[i];
CatHouse[i]=0;
}
Return 0;
}
у нас живёт 4 кота.
Удалим кота, возраст которого 4 года
у нас живёт 3 кота.
Дата публикования: 2014-11-28; Прочитано: 201 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!