static data member in a class

来源:互联网 发布:mac删除vmware fusion 编辑:程序博客网 时间:2024/05/15 23:21
#include<iostream>
#include<string>
using namespace std;


class PrintHead{
protected:
static int PresNum;//the present heads number

public:
PrintHead();
~PrintHead();


void PrintPresHeadsNum();
};


int PrintHead::PresNum = 0; //the definition must occur outside the class


PrintHead::PrintHead()
{
PresNum++;
}


PrintHead::~PrintHead()
{
PresNum--;
}


void PrintHead::PrintPresHeadsNum()
{
cout << PresNum << endl;
}


int main()
{
// PrintHead head0;
// head0.PrintPresHeadsNum();
//
// PrintHead head1;
// head1.PrintPresHeadsNum();


PrintHead heads[8];
heads[1].PrintPresHeadsNum();


return 0;
}
0 0
原创粉丝点击