C/C++實現(xiàn)跨文件共享全局變量詳解
為了實現(xiàn)跨文件共享全局變量,我們可以使用 extern 關(guān)鍵字。extern 關(guān)鍵字用于聲明一個變量,該變量在其他地方已經(jīng)定義。它告訴編譯器這個變量在其他文件中已經(jīng)定義了,不需要重新分配內(nèi)存空間,只需要引用即可。
效果
項目
代碼
Common.h
#pragma once #include <iostream> using namespace std; struct para { bool state; int num; string name; }; //聲明全局變量 extern para g_static_para;
Common.cpp
#pragma once #include "Common.h" //定義全局變量 para g_static_para;
init_class.h
#pragma once #include <iostream> #include "Common.h" using namespace std; class init_class { public: void init(); };
init_class.cpp
#include "init_class.h" #include "Common.h" void init_class::init() { cout << "參數(shù)初始化 全局變量 g_static_para" << endl; g_static_para.state = true; g_static_para.num = 20; g_static_para.name = "測試信息2"; }
use_class.h
#pragma once #include <iostream> #include "Common.h" using namespace std; class use_class { public: void print(); };
use_class.cpp
#include "use_class.h" void use_class::print() { cout << "打印參數(shù) 全局變量 g_static_para" << endl; cout << "g_static_para.state:" << g_static_para.state << endl; cout << "g_static_para.num:" << g_static_para.num << endl; cout << "g_static_para.name:" << g_static_para.name << endl; }
ConsoleApplication1-test.cpp
#pragma once #include <iostream> #include "Common.h" #include "init_class.h" #include "use_class.h" using namespace std; int main() { std::cout << "Hello World!\n"; init_class ic; use_class uc; std::cout << "----------------------\n"; g_static_para.state = false; g_static_para.num = 10; g_static_para.name = "測試信息1"; uc.print(); std::cout << "----------------------\n"; ic.init(); std::cout << "----------------------\n"; uc.print(); }
到此這篇關(guān)于C/C++實現(xiàn)跨文件共享全局變量詳解的文章就介紹到這了,更多相關(guān)C++跨文件共享全局變量內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Qt+QListWidget實現(xiàn)氣泡聊天界面(附源碼)
由于最近的項目需要,做了些相關(guān)IM的工作。所以聊天框也是必不可少的一部分。本文以QListWidget+QPainter繪制的Item做了一個Demo。該Demo只是做一個示例,感興趣的可以了解一下2022-12-12C++實現(xiàn)LeetCode(61.旋轉(zhuǎn)鏈表)
這篇文章主要介紹了C++實現(xiàn)LeetCode(61.旋轉(zhuǎn)鏈表),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07