【发布时间】:2016-07-10 06:59:19
【问题描述】:
我想在另一个范围内访问主函数的局部变量。
我的目标是在cout 中打印 20。
我该怎么做?
在 C++ 中怎么可能?
int var = 10;
int main(int argc, char *argv[])
{
int var = 20; // this var
{
int var = 40;
cout << ::var; // I want to print `var` variable in main scope.
// But this command print global variable.
}
return 0;
}
【问题讨论】:
-
我不明白他为什么会得到减分,他问了一个体面的问题
-
如果您要询问 C,请不要在代码中使用仅在 C++ 中可用的功能。 C 没有范围解析运算符 (
::) 并且不支持cout等。在 C 中,您甚至无法打印全局var— 并且您无法打印隐藏(阴影)int var = 20;从内部块。
标签: c++ global-variables local-variables