前言
网上翻了一些文章,让我感到非常意外的是,居然没有一篇文章是完全讲对的。。
static的定义方法
如果全局变量定义在.h头文件中,那么应该使用 static 关键字!
如图:
在需要调用此全局变量的.h或者.cpp文件中,导入头文件:
使用时,直接写变量名调用即可:
extern 的定义方法
如果全局变量定义在.cpp中,那么应该使用 extern 关键字!
正常定义即可,定义时不要加extern 关键字!如图:
调用时,使用extern 关键字进行声明:
extern 关键字是告诉编译器,变量定义在函数外部。可以是本文件,也可以是其它文件。
网上很多文章,都说是在.h文件中使用extren 来定义,这显然是没有理解extern 关键字的作用
总结
全局变量定义在.h文件中,使用static 关键字进行定义
全局变量定义在其它.cpp文件中,使用extern 关键字进行声明