c++引用返回静态变量
时间: 2024-09-20 08:15:09 浏览: 60
在 C++ 中,静态变量是在整个程序执行期间只初始化一次,并且生命周期贯穿于整个程序的。如果你想通过函数返回一个对静态变量的引用,你可以这样做:
```cpp
class MyClass {
public:
static int myStaticVar; // 声明静态变量
// 函数返回静态变量的引用
static int& getMyStaticRef() {
return myStaticVar;
}
};
// 初始化静态变量 (如果未初始化)
int MyClass::myStaticVar = 0;
int main() {
// 调用函数获取并修改静态变量的引用
int& ref = MyClass::getMyStaticRef();
ref += 5; // 修改静态变量值
// 另一处也能看到修改后的值,因为这是同一个引用
std::cout << MyClass::myStaticVar << std::endl;
return 0;
}
```
在这里,`getMyStaticRef()` 函数返回的是 `myStaticVar` 的引用,所以在函数外部也可以直接操作这个静态变量。需要注意的是,虽然可以修改引用,但静态变量本身在全局作用域内只有一份,所以对它的修改会影响所有地方。
阅读全文
相关推荐














