Windows下静态链接库的使用
生活随笔
收集整理的這篇文章主要介紹了
Windows下静态链接库的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在項目中添加Func.h和Func.cpp文件:
其中分別是示例函數add的聲明和實現。 編譯之后,得到
接下來就是如何使用這個靜態鏈接庫了。 新建一個控制臺程序UseLibTest,如下:
使用靜態鏈接庫需要兩個條件: 1)擁有靜態庫對應的頭文件,此處為Func.h; 2)導入Lib文件,此處為MyLibTest.lib; 將Func.h和MyLibTest.lib放入到UseLibTest的源代碼所在目錄下(P.S:對win32工作目錄沒啥了解,嘗試過把Lib文件放到Debug文件夾里,編譯器表示找不到,放到源代碼目錄下卻神奇地可以找到),并在源代碼中添加這樣一行代碼:
這是一條預編譯指令,從這條指令上也可看出,靜態鏈接庫中的代碼在編譯時是和主程序一起編譯的。 編譯UseLibTest并運行,結果如下:
靜態鏈接庫使用成功!
注意:靜態鏈接庫中不能再包含其他的動態鏈接庫或者靜態庫?,而在動態鏈接庫中還可以再包含。
靜態鏈接是指將一個或多個靜態鏈接庫(.lib文件)在Link時期和調用該庫的程序一起形成exe文件。網上關于靜態鏈接庫的理論敘述多且詳盡,我就不再造輪子了,此處僅說明一下具體的使用方法。
創建一個lib的過程很簡單,如:在項目中添加Func.h和Func.cpp文件:
其中分別是示例函數add的聲明和實現。 編譯之后,得到
接下來就是如何使用這個靜態鏈接庫了。 新建一個控制臺程序UseLibTest,如下:
使用靜態鏈接庫需要兩個條件: 1)擁有靜態庫對應的頭文件,此處為Func.h; 2)導入Lib文件,此處為MyLibTest.lib; 將Func.h和MyLibTest.lib放入到UseLibTest的源代碼所在目錄下(P.S:對win32工作目錄沒啥了解,嘗試過把Lib文件放到Debug文件夾里,編譯器表示找不到,放到源代碼目錄下卻神奇地可以找到),并在源代碼中添加這樣一行代碼:
這是一條預編譯指令,從這條指令上也可看出,靜態鏈接庫中的代碼在編譯時是和主程序一起編譯的。 編譯UseLibTest并運行,結果如下:
靜態鏈接庫使用成功!
注意:靜態鏈接庫中不能再包含其他的動態鏈接庫或者靜態庫?,而在動態鏈接庫中還可以再包含。
總結
以上是生活随笔為你收集整理的Windows下静态链接库的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【简明笔记】循环条件的优化
- 下一篇: C语言的条件编译#if, #elif,