我们假设我有一段这样的代码:
#include <iostream>
int main()
{
int a = 5;
{
int a = 12;
std::cout << a;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我想a==5从外部范围进行cout ,但是main::a肯定无法正常工作.有没有解决方法?
一个(假设)解决方法:
int main()
{
int a = 5;
int *pa = &a;
{
int a = 12;
std::cout << (*pa);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
或者,
int main()
{
int a = 5;
int& ra = a;
{
int a = 12;
std::cout << ra;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)