如果我这样写:
#include <iostream>
int main()
{
using namespace std;
{int n;n=5;} cout<<n;
system("pause");
return 0;
}
编译器告诉我 n 未声明。然后我尝试将其设为静态,但编译器再次告诉我它未声明。声明为静态的变量不具有程序作用域吗?如果没有,我该如何在这个程序中使用 n?
最佳答案
您将作用域与生命周期混淆了。静态变量的生命周期与程序的生命周期相同,但它们仍遵循基于声明位置的作用域规则。
关于c++ - C++ 中的局部/静态变量作用域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15152506/