visual c++ 2005 编译的 debug 版速度太慢
速度比 release 版慢了有 1000 倍,
数据量稍微大一点,就几乎无法调试了,等到问题暴露要花半个小时;
而数据量再小一点,问题又暴露不出来!
怎么解决?
[解决办法]
关掉一些自动检查功能.打开一点点优化.速度会快点
如果还不行,那就手工分析一下可能出错的文件,然后可能会错的编译DEBUG,肯定没错的编译RELEASE.
如果文件的粒度还不够小,你可以通过#pragma把一部分代码设置成不优化的...
还有,编译器有个选项可以设置禁用一些影响调试的优化.把这个打开,在RELEASE下也可以将就调试.
如果以上的方法都不行,你还可以通过断言+LOG来进行跟踪.
再不行,用一些高级调试功能,像条件断点这种.可以提前查出错误,而不是非要出错的时候才知道.
如果这还不行,那用IDE的自动跟踪,写点调试脚本.然后让它运行就可以了.虽然运行会更慢,但如果你脚本写得好,一次就可以定位错误.
如果这都不能满足,那自己写些跟踪代码....像运行时效验之类的.
要充分发挥想像力,好好利用现有条件,就没有调试不出来的错误...