extern 关键字
可以变量的定义和声明分离,定义变量时不能赋初值,用extern关键字。
用于多文件的同一变量使用。
功能测试
三个文件
main.cpp
text.h
text.cpp
使用
extern
在text.h
声明变量 v
text.cpp
实现修改变量 v 函数
main
定义变量 v,输出,调用修改函数输出,编译成功。
将
extern
关键字去除,编译失败,重复定义错误在
text.h
用宏定义限制只能存在一个,编译失败,还是重复定义错误在如上基础上,不包含
text.cpp
文件编译,编译成功(main.cpp记得注释修改函数在如上基础上,
main.cpp
调用多次text.h
,编译成功在如上基础上,去除宏定义不限制只能存在一个,编译失败,重复定义
大概说明:宏定义限制头文件存在一次是有效的。但是多个 .cpp
文件包含同一个 .h
头文件,是应该分别在其中引用头文件,所以宏定义无法限制总共只能包含一次。
所以要用多文件使用同一全局变量目前我还是只知道这个 extern
刚了解的关键字,QAQ。
发现这里的排版和本地差别有点大,有点丑。随便改进一点排版就这样吧。本人缺乏美感。