📌  相关文章
📜  如果C C++中存在具有相同名称的局部变量,则如何访问全局变量(1)

📅  最后修改于: 2023-12-03 15:24:58.241000             🧑  作者: Mango

如何访问全局变量

在C、C++中,如果存在具有相同名称的局部变量,可以通过以下两种方法来访问全局变量:

  1. 使用作用域运算符(::)访问全局变量

全局变量的作用域是整个文件,在函数内部可以使用作用域运算符::访问全局变量。例如:

#include <iostream>
using namespace std;

int global_var = 10;

int main()
{
    int global_var = 20;
    cout << "local variable: " << global_var << endl;
    cout << "global variable: " << ::global_var << endl;

    return 0;
}

运行结果为:

local variable: 20
global variable: 10
  1. 重命名局部变量

在C++中,可以通过将局部变量重命名为其他名称来访问全局变量。例如:

#include <iostream>
using namespace std;

int global_var = 10;

int main()
{
    int global_var = 20;
    int &local_var = global_var;    // 重命名局部变量
    cout << "local variable: " << local_var << endl;
    cout << "global variable: " << global_var << endl;

    return 0;
}

运行结果为:

local variable: 20
global variable: 10

以上两种方法都可以访问全局变量。具体选择哪种方法取决于具体的代码和需求。