一个同名变量定义在三个作用域中,怎么访问?
#include <iostream>
using namespace std;
int i = 0 ;
int main()
{
int i =1;
cout << "sec i = " << i << endl;
cout << "fst i = " << ::i << endl;
{
int i=2;
cout << endl << endl;
cout << "the i = " << i << endl;
cout << "sec i = " << ???:i << endl;
cout << "fst i = " << ::i << endl;
}
return 0;
}
如上,mian函数中,第一个定义的i怎么访问?我试了一下,在第三个i定义的作用域内,第二个i没有办法访问。是不是根本就没有办法访问???如果有,怎么做?请赐教!!!
[解决办法]
没办法。
[解决办法]
第一个可以用:
::i
[解决办法]
而在第三个中无法访问第二个。
[解决办法]
在main内部的复合语句中使用第二个i的指针或者引用。