c++定義全局變量詳解
在C++中定義全局變量是應(yīng)該盡量在.cpp文件中定義,而不要在.h 文件中 定義,定義好了之后,可以在.h文件中利用extern關(guān)鍵字進(jìn)行聲明。如果在.h文件中定義的話,多層包含可能會(huì)引起重復(fù)定義的錯(cuò)誤。下面是一個(gè)示例:
在g_bash.cpp中定義全局變量:
// g_bash.cpp #include "g_base.h" int g_TicketCount = 0; // 定義全局變量并初始化
在g_bash.h文件中利用extern關(guān)鍵字進(jìn)行聲明:
// g_bash.h #ifndef G_BASE_H #define G_BASE_H extern int g_TicketCount; // 全局變量聲明 #endif // G_BASE_H
然后在其他文件要使用這些變量的時(shí)候,只要#include "g_base.h"就可以了,而且不會(huì)引起重復(fù)定義的錯(cuò)誤。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é)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
VisualStudio2022打包項(xiàng)目文件為.exe安裝包
本文主要介紹了VisualStudio2022打包項(xiàng)目文件為.exe安裝包,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之隊(duì)列算法詳解
這篇文章介紹了C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之隊(duì)列的算法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12
VisualStudio Community2019在安裝的過(guò)程中無(wú)法進(jìn)入安裝界面的解決方法
這篇文章主要介紹了VisualStudio Community2019在安裝的過(guò)程中無(wú)法進(jìn)入安裝界面的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
淺談Linux環(huán)境下并發(fā)編程中C語(yǔ)言fork()函數(shù)的使用
fork函數(shù)在Linux中可以創(chuàng)建子進(jìn)程即一個(gè)新的進(jìn)程,這里我們根據(jù)實(shí)例來(lái)淺談Linux環(huán)境下并發(fā)編程中C語(yǔ)言fork()函數(shù)的使用,需要的朋友可以參考下2016-06-06
C/C++連接MySQL數(shù)據(jù)庫(kù)詳細(xì)圖文教程
在實(shí)際開(kāi)發(fā)中我們經(jīng)常需要對(duì)數(shù)據(jù)庫(kù)進(jìn)行訪問(wèn),下面這篇文章主要介紹了C/C++連接MySQL數(shù)據(jù)庫(kù)的詳細(xì)圖文教程,文中通過(guò)代碼以及圖文介紹是非常詳細(xì),需要的朋友可以參考下2024-01-01

