如何使用 extern 关键字在不同的源文件间共享变量

2022-02-11 08:32:18 浏览数 (3)

问题

如何使用 extern 关键字在不同的源文件间共享变量?

回答

首先需要知道 声明定义 的区别。声明并不分配内存,定义才会。

代码语言:javascript复制
extern int a; // 声明,a 的定义可能在其它的文件
int b; // 定义,b 占有实际的内存

下面是一个用法,

代码语言:javascript复制
// file1.cpp
#include <iostream>

extern int a; // a 的定义在另一个文件

void func()
{
    a  ;
}
代码语言:javascript复制
// file2.cpp
#include <iostream>

int a = 1;

void func()
{
    a  ;
}

0 人点赞