c++定義全局變量詳解
在C++中定義全局變量是應(yīng)該盡量在.cpp文件中定義,而不要在.h 文件中 定義,定義好了之后,可以在.h文件中利用extern關(guān)鍵字進行聲明。如果在.h文件中定義的話,多層包含可能會引起重復(fù)定義的錯誤。下面是一個示例:
在g_bash.cpp中定義全局變量:
// g_bash.cpp #include "g_base.h" int g_TicketCount = 0; // 定義全局變量并初始化
在g_bash.h文件中利用extern關(guān)鍵字進行聲明:
// g_bash.h #ifndef G_BASE_H #define G_BASE_H extern int g_TicketCount; // 全局變量聲明 #endif // G_BASE_H
然后在其他文件要使用這些變量的時候,只要#include "g_base.h"就可以了,而且不會引起重復(fù)定義的錯誤。main.cpp下引用示例:
#include <QCoreApplication> #include <iostream> #include g_base.h using namespace std; void proc() { cout<< proc(): <<endl; g_TicketCount++; } int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); cout<< g_TicketCount = << g_TicketCount << endl; proc(); cout<< g_TicketCount = << g_TicketCount << endl; return a.exec(); }
結(jié)果:
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
基于大端法、小端法以及網(wǎng)絡(luò)字節(jié)序的深入理解
本篇文章是對大端法、小端法以及網(wǎng)絡(luò)字節(jié)序進行了詳細的分析介紹,需要的朋友參考下2013-05-05C++對象內(nèi)存分布詳解(包括字節(jié)對齊和虛函數(shù)表)
下面小編就為大家?guī)硪黄狢++對象內(nèi)存分布詳解(包括字節(jié)對齊和虛函數(shù)表)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-12-12C++中幾種將整數(shù)轉(zhuǎn)換成二進制輸出的方法總結(jié)
下面小編就為大家?guī)硪黄狢++中幾種將整數(shù)轉(zhuǎn)換成二進制輸出的方法總結(jié)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09