QT/C++外部变量或者全局变量怎么使用,来个能说清楚的。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT/C++外部变量或者全局变量怎么使用,来个能说清楚的。相关的知识,希望对你有一定的参考价值。
我QT编程 用的是C++ 要传一个变化的温度的值
类A 和类B 要从A传到B中使用
类A中quint8 wendu; 问在类B中怎么使用
不要使用 static 这个只能传一个值就不变了 温度是一直变化的 所以要在B中传一个变化的值。
(另外 quint8是个什么类型的值啊 求大神解答...)
在B类中有个A的指针,或者把A返回的温度传入B的某个方法中
quint8是8位无符号整形,可以转换其他类型
你估计想用全局,那就定义A为全局 : A wendu;
在用B的地方(如果不是同一个文件要加外部声明extern),A.getWendu(); 参考技术A 百度一发 单例模式
Qt学习: 如何在Qt中使用全局变量!出现无法解析的命令的问题看过来!!
很多小伙伴在Qt编程时,不会使用全局变量,其实基本有两种方式来定义使用全局变量,第一种是根据c/c++的extern来进行多文件的使用,第二种方法就是把全局变量放在类中,当做类静态变量来使用,一般来说,第一种方式严重破坏了类的封装,所以还是推荐第二种方式.下面给出简单的示例:
1.先在一个.h文件中声明一个类://c.h#ifndef C_H#define C_Hclass QPos{public:static int x; //注意关键字staticstatic int y; };#endif //C_H2.在.cpp文件里类中的成员进行定义://c.cpp#include "c.h"int QPos::x = 10; //必须要在对应的.cpp文件中进行初始化,否则会被报错!!int QPos::y = 20;3.然后就可以在其他文件中使用这些全局变量了.//m.cpp#include#include "c.h"m::m(QWidget *parent) : QWidget(parent) { ui.setupUi(this); c::x= 50; / c::y= 70; ... }1234567891011121314151617181920212223242526272829303132
–
切记对静态变量必须的初始化必须要在类外进行,同时不能在.h头文件中进行,应该在对应的.cpp中进行,否则会出现无法解析的错误.
本文出自 “13109855” 博客,请务必保留此出处http://13119855.blog.51cto.com/13109855/1974348
以上是关于QT/C++外部变量或者全局变量怎么使用,来个能说清楚的。的主要内容,如果未能解决你的问题,请参考以下文章
ruby在一个文件中定义的变量,如何在下一个文件中使用该变量