C++静态成员是指在类中使用static关键字声明的成员变量或成员函数。静态成员属于类本身,而不是类的对象。它们在所有对象之间共享,只有一份内存空间。静态成员在类外初始化,且只能访问一次。
关键字 static 意味着类中只有一个该成员的实例。静态变量用于定义常量,因为它们的值可以通过直接调用类而不需要创建类的实例来获取。静态变量可在成员函数或类的定义外部进行初始化。你也可以在类的定义内部初始化静态变量。
下面的实例演示了静态变量的用法:
#include <iostream>
using namespace std;class MyClass {
public:static int staticVar; // 静态成员变量static void staticFunc() { // 静态成员函数cout << "This a static function" << endl;}
};// 在类外初始化静态成员变量
int MyClass::staticVar = 0;int main() {MyClass obj1;MyClass obj2;// 访问静态成员变量和函数cout << "obj1.staticVar: " << obj1.staticVar << endl;cout << "obj2.staticVar: " << obj2.staticVar << endl;obj1.staticFunc(); // 通过对象调用静态成员函数MyClass::staticFunc(); // 通过类名直接调用静态成员函数system("pause"); // 暂停程序,等待用户按键继续return 0;
}
obj1.staticVar: 0
obj2.staticVar: 0
This a static function
This a static function
请按任意键继续. . .