在头文件中声明变量,在多个cpp文件引用,报错:重复定义。
#头文件
int a;
原因:此处声明变量a为全局变量(静态区存储),类型为定义申明,分配了空间。多个文件引用该头文件,则,全局变量重复定义。
具体原因:
解决方法:1、定义为const
常量:const常量链接性为内部,相当于引用的每一个cpp文件定义一个独立的 int a;
2、声明为extern int a;
同时需要在一个cpp文件中定义:int a;
在头文件中声明变量,在多个cpp文件引用,报错:重复定义。
#头文件
int a;
原因:此处声明变量a为全局变量(静态区存储),类型为定义申明,分配了空间。多个文件引用该头文件,则,全局变量重复定义。
具体原因:
解决方法:1、定义为const
常量:const常量链接性为内部,相当于引用的每一个cpp文件定义一个独立的 int a;
2、声明为extern int a;
同时需要在一个cpp文件中定义:int a;