將自己寫的經常複用的類封裝成動態庫的方法
C++的開發不像c#那麼給力,基本上引用下就可以了,它的步驟比較繁瑣。
第一步:製作動態庫
利用VC新建工程時選擇win32 dynamic-Link Library(空的工程),然後新增標頭檔案和cpp檔案。假設你要封裝的類的名成是TransferFunction,新增標頭檔案
TransferFunction.h和TransferFunction.cpp到工程中。並將TransferFunction.h修改成:
class __declspec(dllexport) TransferFunction
{
...
}
vc2010中已經新增上了__declspec(dllexport)的自定義巨集比較省事。
這樣編譯完就會產生TransferFunction.dll和TransferFunction.lib兩個檔案。
第二步:如何使用這個dll
當已經生成dll後,有兩種方法可以在其它程式中呼叫dll中的類和成員函式:
方法一:
1)把TransferFunction.dll和TransferFunction.lib複製到呼叫程式的執行路徑下,注意不是debug路徑下。
2)在project->setting->link裡新增TransferFunction.lib(或者用#pragma comment(lib, "TransferFunction.lib") )
3)把TransferFunction.h中的__declspec(dllexport)改成__declspec(dllimport)
然後複製到呼叫程式的執行路徑下。
4)最後在主程式中就可以通過包含TransferFunction.h來使用TransferFunction類和它的成員函式。
方法二(推薦):
在方法一中,你每次建立一個工程都需要把 TransferFunction.dll,TransferFunction.lib,TransferFunction.h三個檔案拷貝到工程裡面 去,事實上這隻發揮了dll對類的程式碼保護的功能,並沒有多大的減輕程式設計人員的工作量,下面的方法可以減少程式設計人員的工作量,具體步驟:
1:將TransferFunction.dll扔到windows/system32下
2:將.TransferFunctionlib扔到VC的lib目錄裡
3:將方法一中的TransferFunction.h扔到VC的include目錄裡
4:同方法一的最後一步。
以後你就可以像使用Opengl的glut、glui等庫一樣使用你自己封裝的一個經常複用的類了。
相關文章
- MFC之動態呼叫自己寫的類庫中的類的成員方法
- java學習 -- 利用類的反射和泛型自己動手寫jdbc封裝小類庫Java反射泛型JDBC封裝
- 封裝一個自己的js庫封裝JS
- 陣列方法的封裝/程式碼的複用加強陣列封裝
- 淺析jQuery原理並仿寫封裝一個自己的庫jQuery封裝
- 將建立程式的API-posix_spawn封裝成一個程式類API封裝
- 編寫自己的程式碼庫(javascript常用例項的實現與封裝)JavaScript封裝
- 自己動手封裝js工具類(JS中定義類的幾種方式)封裝JS
- 靜態庫封裝之ComStr類封裝
- 靜態庫封裝之ComFile類封裝
- 靜態庫封裝之ComDir類封裝
- 編寫自己的程式碼庫(javascript常用例項的實現與封裝–續)JavaScript封裝
- C++類中的常成員和靜態成員C++
- Java類的設計和封裝及類成員的訪問控制Java封裝
- Python的靜態方法和類成員方法Python
- 將MYSQLDUMP全庫備份分為單庫檔案的方法(自己寫的小工具)MySql
- Android Room封裝成一個類似Redis的快取資料庫的效果AndroidOOM封裝Redis快取資料庫
- C++動態庫封裝C#庫,驗證動態庫環境C++封裝C#
- 4個方法建立自己的寫作素材庫
- 動態填寫實體類的值
- 【封裝小技巧】is 系列方法的封裝封裝
- php的curl封裝類PHP封裝
- 一、類的封裝性封裝
- 寫給自己看的釋出react靜態資源的方法React
- Android 常見工具類封裝Android封裝
- 《底特律:成為人類》上電視:遊戲的常態化遊戲
- 將建立執行緒的API-pthread_create封裝成一個執行緒類執行緒APIthread封裝
- iOS動態庫和靜態庫的運用iOS
- 架構的常規分類及複用重點架構
- 我自己的Javascript 庫,封裝了一些常用函式JavaScript封裝函式
- 十五、類與封裝的概念封裝
- http通訊類的封裝HTTP封裝
- Vue 封裝動態元件Vue封裝元件
- 動態代理功能封裝封裝
- MVP模式的經典封裝MVP模式封裝
- 分享個自己封裝的限流trait封裝AI
- 封裝操作cookie的方法封裝Cookie
- web自動化框架—BasePage 類的簡單封裝Web框架封裝