場景
debug模式下自動選擇已禁用 (/Od);release模式下自動選擇 使速度最大化 (/O2) 。
這種速度最大化,會導緻Release版本調試出現有些代碼被精簡掉,有些代碼變量在前後之間
不一緻的問題,例如傳遞指針,指針的位址可能會發生改變。而且在調用第三方庫的時候,是沒有辦法擷取到debug版本下的動态或者靜态庫,是以隻能夠選擇release版本,本章的主要内容是如何設定在release版本下進行調試
分析
Release模式下的設定主要是應用于軟體的釋出,是不攜帶任何的調試資訊,并且程式進行了優化,有的語句已經被優化掉,是以無法進行調試。是以隻要關閉優化以及允許生成調試資訊即可
修改:
1)屬性》》配置屬性》》C/C++>>優化,優化選項:禁用(/Od)
優化之後的代碼,有些斷點調試的代碼已經被編譯器優化了,無法調試
2) 屬性》》配置屬性》》連結器》》 調試,生成調試資訊:(是/DEBUG),生成程式資料庫檔案:$(TargetDir)$(TargetName).pdb
本文轉自fengyuzaitu 51CTO部落格,原文連結:http://blog.51cto.com/fengyuzaitu/1947068,如需轉載請自行聯系原作者