在C++中,静态变量(static variable)是属于类的,而不是属于类的某个对象。这意味着在整个程序运行期间,静态变量只有一个实例,所有该类的对象共享这个变量。静态变量通常用于存储类的所有实例共享的数据。
在类中使用静态变量的方法如下:
- 在类定义内部声明静态变量,使用关键字
static
。 - 如果需要在类外部初始化静态变量,可以在类定义外部进行。
- 访问静态变量时,使用类名和作用域解析运算符
::
。
下面是一个简单的示例:
#includeusing namespace std; class Counter { public: // 声明一个静态变量count static int count; // 构造函数 Counter() { count++; // 每创建一个新对象,count加1 } }; // 初始化静态变量count为0 int Counter::count = 0; int main() { Counter obj1; Counter obj2; Counter obj3; // 输出count的值 cout << "Number of objects created: " << Counter::count << endl; // 输出:Number of objects created: 3 return 0; }
在这个示例中,我们创建了一个名为Counter
的类,该类有一个静态变量count
。每当创建一个新的Counter
对象时,count
的值都会增加。最后,我们输出count
的值,可以看到创建了3个对象。