c++static私有变量
时间: 2023-06-29 20:10:17 浏览: 112
在C++中,可以将一个变量声明为static来使其成为静态变量。如果将一个变量声明为static,则该变量只能被同一文件中的函数访问,不能被其他文件中的函数访问。此外,静态变量的生命周期与程序的整个生命周期相同,即使函数已经返回,静态变量仍然存在。
对于类的静态变量,可以使用类名来访问它们。静态变量是该类的所有对象共享的,因此它们可以用来跟踪该类的所有实例。
对于私有静态变量,只有该类的成员函数可以访问它们。下面是一个示例代码,演示如何在C++中声明和使用静态私有变量:
```cpp
#include <iostream>
using namespace std;
class MyClass {
private:
static int count; // 声明私有静态变量
public:
MyClass() { count++; }
static int getCount() { return count; }
};
int MyClass::count = 0; // 初始化静态变量
int main() {
MyClass obj1, obj2, obj3;
cout << "Count: " << MyClass::getCount() << endl;
return 0;
}
```
在这个例子中,我们声明了一个名为count的静态私有变量。我们使用类名MyClass来访问静态变量,并使用类的构造函数来增加计数器。最后,我们使用静态成员函数getCount来获取计数器的值,并在主函数中打印它。输出结果应该是“Count: 3”。
阅读全文