这种方法出现的原因:
当多个文件中需要共享同一个变量时,可以使用extern
首先我们要清除知道extern的作用:
表明该变量是在其它文件中定义的
定义时分配内存,其它文件引用时不再分配内存
extern引用方法:extern 类型 变量名
- 如果某个模块文件中需要使用另一个模块文件中的全局变量,就要用extern说明
如下:
模块文件test3.cpp中定义了变量a。
此时另一个模块x.cpp想要使用模块文件test3.cpp的变量a,因此需要对a进行声明/定义:extern int a;
经过声明之后,便可以使用;
- 声明规定了变量的类型和名字
- 定义则负责创建与名字关联的实体
使用函数的方法和上面类似,也需要使用extern进行引用
方法都是一样的:
- 被引用的模块文件中定义
- 然后需要引用的模块使用extern进行声明