利用VS2015將C++類封裝成DLL動態鏈接庫


最近在進行OSG開發,想將里面模型導入部分重復使用的代碼封裝成DLL,這樣后續不需要重復編寫這部分代碼了。而C++類封裝成DLL步驟如下:

1、 VS2015新建一個Win32項目,應用程序類型選擇DLL

 

 
2、新建DLL項目后,項目解決方案文件結構如下:
 
3、配置OSG庫
因為DLL使用到了OSG庫,所以項目首先要配置OSG庫,如下:
 
 
 
4、打開OSG.h頭文件,進行代碼編寫修改
在頭文件中加入OSG庫的相關頭文件,並且在類中進行函數和變量的聲明,頭文件如下(標紅部分為添加代碼):
 
5、在源文件中OSG.cpp中,添加類的函數相應的實現,如下 標紅部分為添加代碼 ):
 
6、在VS2015中按F7(生成解決方案)
如果編譯成功,則輸出如下

 

如果是在Debug環境下編譯的,則在Debug目錄下會生成DLL文件和lib文件;Release環境下同理。另外,如果封裝后的DLLx64環境下的項目使用,則此處需要在Debug下的x64環境下編譯生成。
 
7、分別在DLL項目相應位置配置OSG.h、OSG.lib、OSG.dll三個文件, 我們就能使用封裝類的方法了(參看筆記:VS的可執行文件目錄、包含目錄、庫目錄、附加包含目錄、附加庫目錄、附加依賴項的解釋和區別
 
 
PS:在編譯成功生成DLL項目有,按Ctrl+F5 不調試執行,提示如下錯誤:
原因:
因為此DLL封裝項目不是可執行項目,運行不了的。只要編譯成功后,就完成了DLL的封裝。

 


<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM