1.extern
extern 申明的对象主要用于支持分离式编译机制,该机制允许将程序分割为若干个文件,每个文件可被独立编译。
即 在 A.cpp 中申明的变量a , 可以直接在B.cpp 中引用;
如果想声明一个变量而非定义它,就在变量名前添加extern关键字,而且不要显式地初始化变量:
extern int i; //声明i而非定义
int j; //声明并定义i
但我们也可以给由extern关键字标记的变量赋一个初始值,但这样就不是一个声明了,而是一个定义:
extern int v = 2;
int v = 2; //这两个语句效果完全一样,都是v的定义