面试题答案
一键面试在C++中,当局部变量与全局变量同名时,可以通过作用域解析运算符 ::
来在局部作用域中访问全局变量。示例代码如下:
#include <iostream>
// 全局变量
int num = 10;
int main() {
// 局部变量,与全局变量同名
int num = 20;
// 输出局部变量的值
std::cout << "局部变量 num 的值: " << num << std::endl;
// 通过作用域解析运算符访问全局变量
std::cout << "全局变量 num 的值: " << ::num << std::endl;
return 0;
}
在上述代码中,定义了一个全局变量 num
并初始化为 10
,在 main
函数中又定义了一个同名的局部变量 num
并初始化为 20
。通过直接使用 num
访问的是局部变量,而通过 ::num
访问的是全局变量。