Visual?Studio環(huán)境配置圖文詳解(適合新手)
前言
新建一個VS項目,寫的代碼如果要引用一些庫(比如opencv或者其他SDK),需要告訴本項目,庫的各種文件在哪個文件夾內(nèi)。本文介紹兩種配置方法,使用Visual Studio 2022,C++語言作為示范。
方法一:通過 項目屬性 配置
點擊菜單欄“項目”,選中最下方“項目屬性”,出現(xiàn)如下框。

如果沒有C/C++這個部分,可能是空項目,只需要在項目里新建一個c++文件,VS會自動識別到這是一個C++項目。
其次,新建文件時最好是在VS的解決方案資源管理器里,右鍵添加新文件。
如果在windows文件夾里新建,可能會默認在項目中不可見,需要在解決方案資源管理器里點擊 展示所有文件 按鈕,此時應(yīng)該可以看見新建的文件,并且圖標右下角有紅色禁止符號。右鍵文件,選擇包含在項目中 即可。
1. 為項目添加 頭文件
打開C/C++ → General常規(guī) → 附加包含目錄 Addtional Include Directories

這里需要添加的路徑,應(yīng)該指向SDK庫中 .h頭文件 所在的文件夾,比如我這里的D:\samples\ThirdParty\UcvSwapper\Include,也可以使用PATH環(huán)境變量,比如$(SDK_DIR)\Include。

2. 為項目添加 .lib 文件
第二步是為項目添加SDK庫的.lib文件,在Linker → 常規(guī) General → 附加庫目錄 Additional Library Directories。

這里添加.lib所在的文件夾的路徑

3. 為項目指定具體 .lib 庫文件
上一步添加了.lib文件的位置后,還需要指定具體用到哪些庫文件,這樣不用加載過多無用的庫,提高效率。VS項目Linker → 輸入 Input → 附加依賴項 Additional Library Directories,一行輸入一個文件名。最后記得點擊OK/應(yīng)用保存修改后退出。

4. 將 .dll 所在文件夾添加到環(huán)境變量中
大部分時候.lib在編譯時起作用,但并不真正包含代碼的實現(xiàn),而是交給.dll實現(xiàn),減少生成的文件大小。運行時,會動態(tài)鏈接(訪問).dll文件來獲取需要的功能。
所以想要項目生成的文件能運行,需要告訴cmd那些dll文件在哪。具體方式就是將需要用到的dll所在文件夾,添加到用戶/系統(tǒng)環(huán)境變量。

需要注意的是,修改系統(tǒng)環(huán)境變量后,通常重啟之后才生效。不需重啟就生效的方法也有,可以自行搜索。
方法二:通過 屬性表 配置
如果想要在不同VS項目中重復(fù)使用相同的配置,或者進行更精細的拆分管理,可以通過屬性表做到。
選擇菜單欄 → 視圖 View → 其他窗口 Other Windows → 屬性管理器 Property Manager,打開屬性表的文件視圖窗口。

這里可以分別配置Debug和Release兩種情況下的不同項目屬性。右鍵添加屬性表,雙擊屬性表進行配置,配置方法同方法一。配置完就可以在文件管理器中把文件復(fù)制到備份文件夾,日后重用了。
需要注意的是,debug和release的屬性表互相是不通用的,所以命名時可以在結(jié)尾加上_Debug和_Release來區(qū)分。多張屬性表也可以以繼承的方式同時生效。

附加知識:.lib 和 .dll 的關(guān)系
在 Windows 下,.lib 有兩種用途:
- 靜態(tài)庫 .lib
- 完整包含函數(shù)實現(xiàn)。
- 鏈接器把代碼直接編譯進你的 .exe,不需要 dll。
- 生成的 exe 比較大,但運行時不依賴外部文件。
- 動態(tài)庫對應(yīng)的 import library .lib
- 當你使用 .dll 的時候,通常還會配一個 .lib,叫 import library。
- 鏈接器編譯時用這個 .lib 文件去“占位”,知道函數(shù)在哪。
- 真正的實現(xiàn)在 .dll 里,運行時程序去加載 .dll。
- 如果沒有 .lib,VS 編譯器不能直接鏈接 dll,除非你自己用 LoadLibrary/GetProcAddress 動態(tài)加載。
- 所以鏈接器需要 .lib 文件(import library)來完成編譯,運行時依賴 .dll 提供真正實現(xiàn)。
總結(jié)
到此這篇關(guān)于Visual Studio環(huán)境配置的文章就介紹到這了,更多相關(guān)Visual Studio環(huán)境配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 在Visual Studio Code中配置GO開發(fā)環(huán)境的詳細教程
- Visual Studio Code配置C、C++環(huán)境并編寫運行的方法
- Visual Studio Code 2020安裝教程及CPP環(huán)境配置(教程圖解)
- visual studio 2019安裝配置可編寫c/c++語言的IDE環(huán)境
- Visual Studio code 配置Python開發(fā)環(huán)境
- Visual Studio Code配置C/C++開發(fā)環(huán)境的教程圖解
- visual studio code 配置C++開發(fā)環(huán)境的教程詳解 (windows 開發(fā)環(huán)境)
相關(guān)文章
使用TeXLive2022和VSCode安裝配置步驟(LaTeX寫論文)
這篇文章主要介紹了使用TeXLive2022和VSCode的安裝配置步驟,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-07-07
Istio?訪問外部服務(wù)流量控制最常用的5個技巧示例
這篇文章主要介紹了Istio訪問外部服務(wù)流量控制最常用5個技巧示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-06-06
詳解git merge 與 git rebase的區(qū)別
這篇文章主要介紹了詳解git merge 與 git rebase的區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07

