gpt4 book ai didi

c++ - 我可以从外部访问函数内部的静态变量吗

转载 作者:可可西里 更新时间:2023-11-01 16:27:38 25 4
gpt4 key购买 nike

C/C++:我可以从外部访问函数内部的静态变量吗?例如:

#include <iostream>
using namespace std;

void f()
{
static int count = 3;
cout << count << endl;
}

int main(int argc, char** argv)
{
f::count = 5; // apparently this is an invalid syntax.
f();

return 0;
}

最佳答案

不,你不能,无论是在 C 中还是在 C++ 中。

如果要维护与函数关联的状态,请定义一个具有适当状态和成员函数的类。 (在 C++ 中。您还用 C 标记了问题;同样的技术有效,但您需要自己完成所有基础工作。)

虽然它们有它们的用途,但大多数时候非常量静态局部变量不是一个好主意。它们使您的函数线程不安全,并且通常使其成为“调用一次”。

关于c++ - 我可以从外部访问函数内部的静态变量吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30635953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com