当局部变量和全局变量重名的时候,局部变量在其定义域的优先级更高,全局变量会自动被忽视,如果我们想要用到全局变量,我们可以在全局变量前加上::作用域运算符,因为C++里定义当缺省左侧对象时默认为全局变量
代码:
#include<iostream>
using namespace std;
int x=100;
int main(){
int x=10;
cout<<x<<endl;//输出为10
cout<<::x;//输出为100
}
本文探讨了C++中局部变量与全局变量重名时的处理方式,并通过示例代码展示了如何使用作用域运算符来区分两者。这对于理解变量的作用域及避免命名冲突非常重要。
当局部变量和全局变量重名的时候,局部变量在其定义域的优先级更高,全局变量会自动被忽视,如果我们想要用到全局变量,我们可以在全局变量前加上::作用域运算符,因为C++里定义当缺省左侧对象时默认为全局变量
代码:
#include<iostream>
using namespace std;
int x=100;
int main(){
int x=10;
cout<<x<<endl;//输出为10
cout<<::x;//输出为100
}
1777
2144

被折叠的 条评论
为什么被折叠?