T******r 发帖数: 257 | 1 winxp, vc++ 6.0
写的一个数值计算程序在debug模式下运行很好, 没任何错误.
转到release模式下, 经常会crash, 但是如果不crash, 结果也是对的. crash的概率
大概20%.
请问可能有什么问题?
没法debug啊. debug下总是对的.
我能想到的是 memory leak问题, 但是仔细检查,new的都delete了.
或者是vector的subscript出界了, 但是要出界了debug下应该也会出错.
就算不报错, 计算结果也不可能总是对的. | k****f 发帖数: 3794 | 2 用boundchecker检查
【在 T******r 的大作中提到】 : winxp, vc++ 6.0 : 写的一个数值计算程序在debug模式下运行很好, 没任何错误. : 转到release模式下, 经常会crash, 但是如果不crash, 结果也是对的. crash的概率 : 大概20%. : 请问可能有什么问题? : 没法debug啊. debug下总是对的. : 我能想到的是 memory leak问题, 但是仔细检查,new的都delete了. : 或者是vector的subscript出界了, 但是要出界了debug下应该也会出错. : 就算不报错, 计算结果也不可能总是对的.
| s***r 发帖数: 10 | 3 Most likely it's an init problem. Debug version will initialize
uninitialized values/pointers to 0 while release version doesn't, that will
be filled with random values in release and cause random crash.
You can also build a release-debug version to test. |
|