温馨提示×

c++静态变量怎么初始化

c++
小亿
125
2023-12-13 09:31:52
栏目: 编程语言

在C++中,静态变量的初始化可以通过以下几种方式来实现:

  1. 在类的定义外部进行初始化:
class MyClass {
public:
    static int myStaticVar;
};

int MyClass::myStaticVar = 10; // 静态变量初始化

int main() {
    // 访问静态变量
    cout << MyClass::myStaticVar << endl; // 输出:10
    return 0;
}
  1. 在类的定义内部进行初始化:
class MyClass {
public:
    static int myStaticVar;
};

int MyClass::myStaticVar = 10; // 静态变量初始化

int main() {
    // 访问静态变量
    cout << MyClass::myStaticVar << endl; // 输出:10
    return 0;
}
  1. 使用静态成员函数进行初始化:
class MyClass {
public:
    static int myStaticVar;
    static int getStaticVar() {
        return myStaticVar;
    }
};

int MyClass::myStaticVar = MyClass::getStaticVar(); // 静态变量初始化

int main() {
    // 访问静态变量
    cout << MyClass::myStaticVar << endl; // 输出:0
    return 0;
}

需要注意的是,静态变量只能在类的定义外部进行初始化,不能在类的构造函数或其他非静态成员函数中初始化。

0