在继续之前,我建议您阅读以下两个帖子:
C ++中的静态数据成员
C ++中的静态成员函数
我们知道静态成员是类成员。它们可用于类中的所有对象。因此,我们可以使用计数器来计数对象的总数,并且该计数器必须是静态数据成员。
#include <iostream>
using namespace std;
class Counter
{
private:
//静态数据成员为count-
static int count;
public:
//默认构造函数
Counter()
{ count++; }
//静态成员函数
static void Print()
{
cout<<"\nTotal objects are: "<<count;
}
};
//用0计数初始化
int Counter :: count = 0;
int main(){
Counter OB1;
OB1.Print();
Counter OB2;
OB2.Print();
Counter OB3;
OB3.Print();
return 0;
}输出结果
Total objects are: 1 Total objects are: 2 Total objects are: 3
在上面的示例中,count是一个静态数据成员,该成员在构造函数中递增,因此,我们可以轻松获得对象计数器。