您好,登錄后才能下訂單哦!
很多小伙伴在Qt編程時(shí),不會(huì)使用全局變量,其實(shí)基本有兩種方式來定義使用全局變量,第一種是根據(jù)c/c++的extern來進(jìn)行多文件的使用,第二種方法就是把全局變量放在類中,當(dāng)做類靜態(tài)變量來使用,一般來說,第一種方式嚴(yán)重破壞了類的封裝,所以還是推薦第二種方式.下面給出簡單的示例:
1.先在一個(gè).h文件中聲明一個(gè)類://c.h#ifndef C_H#define C_Hclass QPos{public:static int x; //注意關(guān)鍵字staticstatic int y; };#endif //C_H2.在.cpp文件里類中的成員進(jìn)行定義://c.cpp#include "c.h"int QPos::x = 10; //必須要在對應(yīng)的.cpp文件中進(jìn)行初始化,否則會(huì)被報(bào)錯(cuò)!!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
–
切記對靜態(tài)變量必須的初始化必須要在類外進(jìn)行,同時(shí)不能在.h頭文件中進(jìn)行,應(yīng)該在對應(yīng)的.cpp中進(jìn)行,否則會(huì)出現(xiàn)無法解析的錯(cuò)誤.
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。