下面是一段對兩者區別的說明:
項目Debug、Release條件編譯常數Debug、Trace。Trace優化代碼False、True,輸出路徑bin\Debug、bin\Release,生成調試信息True、False。Debug模式下生成的程序集爲調試版本,未經優化;在bin\debug\目錄中有兩個文件,除了要生成的.exe或.dll文件外,還有個.pdb文件,這個.pdb文件中就記錄了代碼中的斷點等調試信息;Release模式下不包含調試信息,並對代碼進行了優化,\bin\release\目錄下只有一個.exe或.dll文件。注意若要更改項目的生成模式,不能只從項目屬性頁上點“配置”下拉框更改,那樣不起作用,必須點右上角的“配置管理器”按鈕才能更改。
關於Debug和Release,MSDN裏面的說明是:
VisualStudio項目對程序的發佈和調試版本分別有單獨的配置。顧名思義,生成調試版本的目的是用於調試,而生成發佈版本的目的是用於版本的最終分發。如果在VisualStudio中創建程序,VisualStudio將自動創建這些配置並設置適當的默認選項和其他設置。在默認設置下:程序的“調試”配置用全部符號調試信息編譯,不進行優化。(優化會使調試複雜化,因爲源代碼和生成的指令間的關係更加複雜。) 程序的“發佈”配置被完全優化,不包含任何符號調試信息。調試信息可在單獨的 PDB 文件中生成。
我要說明的是在Debug和Release兩個模式下編譯時引用路徑的不同:
1、Debug模式是允許項目引用的,在Debug模式下編譯時,在編譯當前先將引用項目進行了編譯。而Release模式則不同,不能引用項目,只能先編譯所需類庫,然後通過引用路徑->路徑設置進行所需的類庫所在文件夾的引用。
2、我們都知道每個項目中都有個引用(中文版)/reference(英文版),在這裏我們引用我們所需要的組件,在Debug模式下可以,然而在Release模式下此方法是行不通的,在編譯時依然會造成編譯時所需的組件無法引用。也需要在引用路徑->路徑設置添加所需的類庫所在文件夾的引用。
Debug和Release兩者在編譯時引用方式的不同
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
C# 基於SharpPcap的局域網數據包捕獲 之二 監聽代碼
優惠碼大使
2019-02-24 19:41:12
[C#]“冒泡排序”示例代碼
五子連星
2019-02-23 13:23:12
C# 中的委託和事件
zachary_woo
2019-02-23 00:15:11
PHP 5.3.10 編譯安裝時出現 undefined reference to `libiconv' 錯誤的解決方法
小紅帽子
2019-02-23 13:37:48
跟我一起寫 Makefile
hardstruggle95
2019-02-23 13:32:44
masm編譯環境配置
mapdll
2019-02-23 13:02:47
linux 編譯php-bcmath擴展
shijiaoliang
2019-02-23 00:38:18
關於OpenCV庫的Debug和Release版本
vopit
2019-02-23 00:27:27
The import *** cannot be resolved
憤怒的列兵
2019-02-23 00:17:01