我使用的是MSVC ++ 2005 x64。 某些代码在发布优化模式下工作不正常。 所以,我想对该代码进行测试。 问题是,我的测试代码只在调试模式下运行。 (我不想在产品代码中混合测试代码。)
那么,我可以在调试版本中声明一部分代码作为发布优化模式进行编译吗? 例如,像__asm ......或者其他什么...... __build_start(释放) int x = 0; .. 做一点事 .. __build_end(释放)
提前致谢。
答案 0 :(得分:1)
如果有帮助,您可以在文件级别执行此操作。右键单击解决方案资源管理器中的文件 - >属性 - > c ++ - >优化,然后设置该文件的优化级别。
答案 1 :(得分:0)
http://www-01.ibm.com/support/docview.wss?us=993&uid=swg21265414
答案 2 :(得分:0)
我的第一个嫌疑人不是优化器,而是带副作用的调试。注意以下事项:
assert( ++i ); // assertions with actions
print_debug( "foo = %d", get_foo()); // function calls that are compiled out
#if _DEBUG
# speed += 10; // kludges
#else
# speed += 1000;
#endif