gpt4 book ai didi

c++ - 多个文件中的全局变量

转载 作者:行者123 更新时间:2023-11-30 16:32:33 28 4
gpt4 key购买 nike

我有两个源文件需要访问公共(public)变量。做这个的最好方式是什么?例如:

源1.cpp:

int global;

int function();

int main()
{
global=42;
function();
return 0;
}

源2.cpp:

int function()
{
if(global==42)
return 42;
return 0;
}

全局变量的声明应该是静态的、外部的,还是应该在两个文件都包含的头文件中?

最佳答案

全局变量应该在两个源文件包含的头文件中声明extern,然后仅在其中一个源文件中定义:

common.h

extern int global;

source1.cpp

#include "common.h"

int global;

int function();

int main()
{
global=42;
function();
return 0;
}

source2.cpp

#include "common.h"

int function()
{
if(global==42)
return 42;
return 0;
}

关于c++ - 多个文件中的全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50088949/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com