C++编写一个类,统计目前存在多少个该类的对象
作者:野牛程序员:2024-10-25 11:10:46 C++阅读 2615
C++编写一个类,统计目前存在多少个该类的对象
C++编写一个类,统计目前存在多少个该类的对象
以下是一个 C++ 程序,定义了一个类 ObjectCounter,用于统计当前存在多少个该类的对象:
#include <iostream>
class ObjectCounter {
private:
static int count; // 静态成员,用于统计对象数量
public:
// 构造函数
ObjectCounter() {
count++; // 每次创建对象时计数器加一
}
// 析构函数
~ObjectCounter() {
count--; // 每次销毁对象时计数器减一
}
// 静态成员函数,返回当前对象数量
static int getCount() {
return count;
}
};
// 静态成员初始化
int ObjectCounter::count = 0;
int main() {
std::cout << "当前对象数量: " << ObjectCounter::getCount() << std::endl;
// 创建对象
ObjectCounter obj1;
std::cout << "创建 obj1,当前对象数量: " << ObjectCounter::getCount() << std::endl;
ObjectCounter obj2;
std::cout << "创建 obj2,当前对象数量: " << ObjectCounter::getCount() << std::endl;
{
ObjectCounter obj3;
std::cout << "创建 obj3,当前对象数量: " << ObjectCounter::getCount() << std::endl;
} // obj3 超出作用域,自动调用析构函数
std::cout << "obj3 超出作用域后,当前对象数量: " << ObjectCounter::getCount() << std::endl;
return 0;
}程序说明
ObjectCounter 类:
包含一个静态成员
count,用于统计当前存在的对象数量。构造函数: 每次创建对象时,
count加一。析构函数: 每次销毁对象时,
count减一。静态成员函数
getCount: 返回当前对象数量。main 函数:
显示创建和销毁对象后的当前对象数量。
创建几个对象以演示计数功能,并在一个局部作用域中创建
obj3,展示作用域结束时对象数量的变化。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

