c++ - C++ 中的局部/静态变量作用域

标签 c++ variables static scope

如果我这样写:

#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/

相关文章:

static - Ada 编译问题(寻找我没有的 adbs?)

javascript - 使用字符串键和字符串值声明静态 Javascript 映射的正确方法

java - 是否可以使用 Gson 实例作为模型 bean 中的静态字段(重用)?

c++ - 图像处理程序类中的 std::map 帮助

c++ - 嵌套名称说明符中的类型不完整

c++ - <Swig 类型为 'std::map< char,int > 的对象的代理

Python 3,循环中的变量

php - 临时变量 v 数组索引

当请求时,PHP 将 mysql 查询作为变量传递给第二个 php 脚本

c++ - 代码块 : [highlight: No such directory found