天天看點

VC++包含目錄和c/c++ 附加包含目錄的差別

c/c++, 附加庫目錄,代表的是c/c++檔案編譯時所需要的頭檔案,而資源編譯時也是需要附加包含庫目錄的,

而vc++的包含目錄,代表的是全局項目的包含目錄

配置過VC++裡面的庫,C/C++裡面的就可以不用配置

VS項目中的包含目錄、庫目錄、附加包含目錄、附加庫目錄、附加依賴項均在”項目->屬性->配置屬性”下進行配置,具體說明如下:

VC++目錄:

包含目錄:尋找#include<xxxx.h>中的xxxx.h的搜尋目錄

庫目錄:尋找.lib檔案的搜尋目錄
           

C/C++:

正常->附加包含目錄:尋找#include<xxxx.h>中的xxxx.h的搜尋目錄(每一項對應一個檔案夾XXXX,檔案夾中包含了編譯時所需的頭檔案,使用時直接#include<XXXX>即可)
           

連結器:

正常->附加庫目錄:尋找.lib檔案的搜尋目錄

輸入->附加依賴項:lib庫(C++的庫會把函數、類的聲明放在*.h中,實作放在*.cpp或*.cc中。編譯之後,*.cpp,*.cc,*.c會被打包成一個.lib檔案,這樣可以保護源代碼)
           

常見問題:

1.包含目錄和附加包含目錄(庫目錄和附加庫目錄)的差別:

包含目錄:修改了系統的include宏的值,是全局的;

附加包含目錄:用于目前項目,對其他項目沒有影響。

(庫目錄和附加庫目錄的差別同上)
           

2.可知包含目錄和附加包含目錄(庫目錄和附加庫目錄)的差別主要在于全局還是目前,那麼當需要對某工程添加這些目錄時,通常情況下,都是在附加包含目錄和附加庫目錄中添加的。

  1. 要使用一個庫,除了要include其頭檔案以外(附加包含目錄),還要在連結過程中把lib加進去(附加庫目錄、附加依賴項)。

4.添加方法:

附加包含目錄---添加工程的頭檔案目錄:

  項目->屬性->配置屬性->C/C++->正常->附加包含目錄:加上頭檔案的存放目錄;

附加庫目錄---添加檔案引用的lib靜态庫路徑:

  項目->屬性->配置屬性->連結器->正常->附加庫目錄:加上lib檔案的存放目錄;

附加依賴項---添加工程引用的lib檔案名:

  項目->屬性->配置屬性->連結器->輸入->附加依賴項:加上lib檔案名。
           

5.當需要向項目中添加.dll動态連結庫時,直接将需要添加的.dll檔案拖拽到項目生成的.exe所在的檔案夾下即可(項目->屬性->配置屬性->正常->輸出目錄,可以看到.exe生成在哪個目錄下)。

6.在添加上述幾個目錄的路徑的時候,可以看到$(xxxx),這就是宏了,可以點開右下角的宏檢視這些分别代表什麼字元串。

繼續閱讀