静态成员变量和函数属于类本身,所有对象共享静态变量,需在类外定义初始化,通过类名即可访问,如MyClass::count。

在C++中,静态成员变量和静态成员函数属于类本身,而不是类的某个对象。这意味着它们可以在没有创建类实例的情况下被访问,且所有对象共享同一个静态成员变量。
静态成员变量是类的所有对象共用的变量。它必须在类外定义并初始化,即使它在类内被声明为 static。
例如:
class MyClass {
public:
static int count; // 声明静态成员变量
MyClass() {
count++;
}
};
int MyClass::count = 0; // 必须在类外定义和初始化
在这个例子中,每创建一个 MyClass 对象,count 就加1。由于 count 是静态的,所有对象共享同一个 count 变量。你可以通过类名直接访问它:
立即学习“C++免费学习笔记(深入)”;
cout << MyClass::count; // 输出当前对象数量
静态成员函数属于类,不依赖于任何对象实例。它只能访问静态成员变量和其他静态成员函数,不能访问非静态成员,因为它没有 this 指针。
例如:
class MyClass {
public:
static int getCount() {
return count; // 只能访问静态成员
}
private:
static int count;
};
int MyClass::count = 0;
调用方式:
cout << MyClass::getCount(); // 无需对象即可调用
静态成员常用于实现计数器、工具函数、单例模式或配置管理等场景。
以上就是C++类的静态成员变量与静态函数使用的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号