Debug和Release
Debug 通常稱為調試版本,它包含調試資訊,並且不作任何最佳化,便於程式員偵錯工具。Release 稱為發布版本,它往往是進行了各種最佳化,使得程式在代碼大小和運行速度上都是最優的,以便使用者很好地使用。
release模式下不出錯,但debug模式下報錯。
這種情況下大多也是因為代碼書寫不正確引起的,查看MFC的源碼,可以發現好多ASSERT的語句(斷言),這個宏只是在debug模式下才有效,那麼就清楚了,release版不報錯是忽略了錯誤而不是沒有錯誤,這可能存在很大的隱患,因為是Debug模式下,比較方便調試,好好的檢查自己的代碼,再此就不多說了。
Debug與Release不同的問題在剛開始編寫代碼時會經常發生,99%是因為你的代碼書寫錯誤而導致的,所以不要動不動就說系統問題或編譯器問題,努力找找自己的原因才是根本。我從前就常常遇到這情況,經曆過一次次的教訓後我就開始注意了,現在我所寫過的代碼我已經好久沒遇到這種問題了。下面是幾個避免的方面,即使沒有這種問題也應注意一下:
1. 注意變數的初始化,尤其是指標變數,陣列變數的初始化(很大的情況下另作考慮了)。
2. 自訂訊息及其他聲明的標準寫法
3. 使用調試宏時使用後最好注釋掉
4. 盡量使用try - catch(...)
5. 盡量使用模組,不但表達清楚而且方便調試。
VC6.0將程式打包成一個可執行檔(release)
(1)控制台應用程式
首先開啟程式,工程—>設定,左側下拉式清單選擇Win32 Release,右側"Microsoft 基礎類",不選擇,確定。
然後選擇組建—>批組建,去掉debug前面的鉤,保留release前面鉤,確定,完成。完成之後會在主目錄下產生Release檔案夾,裡面的exe檔案拷出來可以獨立運行。
(2)MFC程式
首先開啟程式,工程—>設定,左側下拉式清單選擇Win32 Release,右側"Microsoft 基礎類",選擇“使用MFC作為靜態連結庫”,確定。
然後選擇組建—>批組建,去掉debug前面的鉤,保留release前面鉤,確定,完成。
完成之後會在主目錄下產生Release檔案夾,裡面的exe檔案拷出來可以獨立運行。