阅读量:128
在C++中,static变量可以在声明时初始化,也可以在定义时初始化。以下是正确初始化static变量的方法:
- 在声明时初始化:在类的声明中直接初始化static变量。例如:
class MyClass {
static int count;
};
int MyClass::count = 0;
- 在定义时初始化:在类的定义中初始化static变量。例如:
class MyClass {
static int count;
};
int MyClass::count = 0;
- 在类的构造函数中初始化:如果static变量是一个对象,也可以在类的构造函数中初始化static变量。例如:
class MyClass {
static std::string name;
public:
MyClass() {
name = "MyClass";
}
};
std::string MyClass::name;
无论哪种方式,都需要在类的定义文件中初始化static变量,以确保在程序运行时正确初始化static变量。