无法在Visual Studio中观察变量值,并将编译器优化设置为最大化速度(/ O2)

bjs*_*123 1 c++ visual-studio-2008

我正在使用Visual Studio 2008中的c ++应用程序我用Maximize speed(/ o2)构建了我的项目(来自属性 - >配置属性 - > c/c ++ - >优化 - >优化)无法观察变量值调试代码.请帮忙.

Bli*_*ndy 6

这个是正常的.激活优化后,编译器几乎忽略了所有变量请求,并尝试执行它认为最好的操作.

有一个原因,为什么调试版本没有启用优化:)

编辑:对于特定的代码位启用或禁用优化可能会有一些好运.试试这个链接:http://msdn.microsoft.com/en-us/library/chh3fb0k(VS.80).aspx

  • @ bjskishore123:您仍然可以调试发布版本.但是你必须忍受你的代码被削弱,因为这就是优化*做*.如果优化从代码中删除变量,您显然无法在调试器中观察它.你需要在"完全坚持我编写的代码"和"将我的代码转换为更有效的代码"之间进行权衡,后者意味着源代码所说的内容之间会有差异(例如变量存在或该行N在第N + 1行之前执行,以及在运行或调试应用程序时实际发生的情况 (2认同)