采用::操作符实现:
int gVar = 3;
void func() {
int gVar = 9;
printf("global val = %d, local val = %d \n",::gVar, gVar);
}
int main() {
func();
}
Note: 在C中,并没有域操作符。
域操作符的几种用法:
分为三种:全局作用域符,类作用域符,命名空间作用域符
全局作用
全局作用域符号:当全局变量在局部函数中与其中某个变量重名,那么就可以用::来区分,例如上例。
类作用域符号
类作用域符号::的前面一般是类名称,后面一般是该类的成员名称,C++为了避免不同的类有名称相同的成员而采用作用域的方式进行区分。
命名空间
namespace::name