windows下C 專案引用其他專案

2021-08-14 12:21:29 字數 717 閱讀 4630

c++引用其他專案有兩種方式,一種是動態鏈結庫(dll(執行時用到) + lib(導入庫檔案編譯時用到)),一種是靜態連線庫(lib(編譯時用到))。動態鏈結庫和靜態連線庫,是在建立專案的時候選擇的,選擇靜態連線庫,編譯會生成.lib檔案,選擇動態鏈結庫專案時,在外部引用的成員前面要加上__declspec(dllexport),不然不會生成.lib導入庫,vs2010反正是這樣的。

引用的三種方式:

1.如果都是在乙個解決方案裡面,就專案滑鼠右鍵-->屬性-->通用屬性-->框架和引用-->增加新引用

2.專案右鍵屬性-->配置屬性-->聯結器-->輸入-->附加依賴項裡面加入.lib檔案

3.#pragma comment(lib,"***.lib")匯入.lib檔案

上面的.lib檔案對於動態和靜態兩種情況匯入方式都是一樣的,但兩個.lib檔案代表的意思不一樣,靜態鏈結庫明顯會比匯入庫達很多,但動態鏈結庫執行時要要.dll檔案在,不然要報錯,還有種方法可以區分導入庫和靜態鏈結庫兩種.lib:

在cmd裡面輸入:lib /list xx.lib

輸出很多.obj的是靜態鏈結庫,因為靜態鏈結庫就是把obj檔案打包在一起的

輸出很多.dll檔案的是導入庫,導入庫就是告訴程式去相應dll裡面找**

注:當是.c檔案呼叫.cpp檔案的dll函式,那麼要考慮到c和c++的編譯生成函式的名稱不一樣,這時在cpp函式前面加上extern "c"讓用c的方式生成函式名,這樣才能正常呼叫

iOS 在專案中引用其他專案

ngmovieplayer was created by matthias tretter myell0w and philip messlehner messphilip it is inspired from code from hsplayer.這兩句一看就是大神封裝的作品啊。self mov...

ios專案中引用其他開源專案

1.將開源專案的.xcodeproj拖入專案frameworks 2.build phases下 links binary with libraries 引入.a檔案。target dependencies裡引入開源專案檔案 3.build setting下的 search paths 裡 head...

ios專案中引用其他開源專案

1.將開源專案的.xcodeproj拖入專案frameworks 2.build phases下 links binary with libraries 引入.a檔案。target dependencies裡引入開源專案檔案 3.build setting下的 search paths 裡 head...