您可以在下面找到我的代码及其输出。我应该在“SOMETHING”中使用什么前缀(或其他名称)来访问中级(j == 2)的j?
我试过了
但这没有用。
编码:
#include <iostream>
int j=3;//global
using std::cout;using std::endl;
int main(){
int j=2;//mid
cout<<"inside general main:\n";
cout<<"cout<<j---"<<j<<endl;//prints 2
cout<<"cout<<::j---"<<::j<<endl;//prints 3
cout<<"inside for loop:\n";
for(int i=0;i<1;i++){
int j=1;//inside
cout<<"cout<<j---"<<j<<endl;//prints 1
cout<<"cout<<::j---"<<::j<<endl;//prints 3
//cout<<"cout<<::j---"<<SOMETHING<<endl;//prints 2
}
return 0;
}
输出:
inside general main:
cout<<j---2
cout<<::j---3
inside for loop:
cout<<j---1
cout<<::j---3
最佳答案
没有涉及本地范围的限定条件。
只需使用其他名称即可。