qt如何定义全局变量_QT中全局变量的定义
多的就不说了,本来就是⼀个简单地内容,只是不会的话会很头疼
我们⾸先新建两个⽂件,⽂件名可以⾃定义,我们在这⾥定义为variate.h 和 variate.cpp 当然了,后缀是不能变的。
和函数⼀样,我们在variate.h中对进⾏声明,注意,extern 是不能遗漏的
#ifndef VARIATE_H
#define VARIATE_H
int num01;
extern QString str;
#endif // VARIATE_H
static修饰的变量我们在variate.cpp中对全局变量进⾏定义
int num01;
QString str = "test";
我们在这⾥定义了2个变量,⼀个没有赋值,⼀个赋值了
在需要使⽤这些变量的⽂件中,我们将头⽂件variate.h包含进去就可以使⽤了。
解惑:
有⼈有这样的习惯,在头⽂件中定义⼀个static变量,例如定义:static int i; 然后在需要⽤的地⽅将头⽂件包含,然后编译会提⽰错误,为什么呢?
原来在头⽂件.h中定义的static int i 变量系统不会对它进⾏编译,只会在包含了它的.cpp⽂件中进⾏编译,相当于在cpp⽂件中定义了⼀个static int i 的变量,于是它就成了⼀个局部变量,并不能全局使⽤。
所以⼤家在以后的编码过程中,⼀定不要在.h中定义变量,只能在那⾥对变量进⾏声明。
以上代码为⽂件中的全部代码,请不要画蛇添⾜,如果类型不在库⽂件中,可以⾃⾏使⽤#include进⾏包含。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论