【发布时间】:2020-03-18 18:55:41
【问题描述】:
我需要帮助来理解下面 C++ 代码中大括号的功能。看着它,它似乎在大括号中的语句中本地初始化变量,因此不会影响主函数中的任何全局变量。我想了解的是为什么。我的教科书对此并不清楚。
输入:
#include <iostream>
using namespace std;
int main()
{
int x = 0;
{
int x = 13;
cout << x << ",";
}
cout << x << endl;
return 0;
}
输出:
13,0
【问题讨论】:
-
你用的是什么教材?您可以在索引中搜索“范围”一词。
-
另一个要调查的关键字是“shadowing”。
-
@Cornelius Mynhardt 至少为初学者阅读一本关于 C++ 的书。
-
如果你把一张照片放在另一张照片上然后把它取下来,你再次看到第一张照片就不会感到惊讶了。