extern
是一个 C/C++ 关键字,用于声明一个变量或函数,表示它在其他地方已经定义
在头文件中使用 extern
关键字的一个常见场景是当你有一个全局变量,并希望在多个源文件中访问它时。例如,假设你有一个名为 global_variable.h
的头文件,并在其中声明一个全局整数变量:
// global_variable.h
#ifndef GLOBAL_VARIABLE_H
#define GLOBAL_VARIABLE_H
extern int global_int; // 声明全局变量
#endif // GLOBAL_VARIABLE_H
然后,在一个名为 main.cpp
的源文件中定义这个全局变量:
// main.cpp
#include "global_variable.h"
int global_int = 42; // 定义全局变量
int main() {
// ...
}
现在,你可以在其他源文件中包含 global_variable.h
头文件并访问 global_int
变量:
// another_file.cpp
#include "global_variable.h"
void someFunction() {
global_int = 10; // 访问全局变量
}
请注意,在头文件中仅声明全局变量,而在一个源文件中定义它。这样可以确保全局变量只被定义一次,避免重复定义错误。