如何在C++中定义全局变量时避免重复定义呢?只要在定义时尽量在.cpp文件中进行,而不要在.h 文件中定义,定义好了之后,可以在.h文件中利用extern关键字进行声明。如果在.h文件中定义的话,多层包含就可能会引起重复定义的错误。下面通过一个示例为大家展示。
在base.cpp中定义全局变量
base.cpp
int g_MaxTime;
int g_MinTime;
int g_MaxCount;
int g_MinCount;
base.h
extern int g_MaxTime;
extern int g_MinTime;
extern int g_MaxCount;
extern int g_MinCount;
然后其他文件要使用这些变量的时候
只要#include "base.h"就可以了,而且不会引起重复定义的错误