您的位置:首页 > 其它

单步执行遇到的离奇问题?一个简单的赋值语句都执行失败的bug

2009-02-13 11:04 302 查看
问题描述:

在识别器引擎的鉴权线程里,

我在使用iniFile读取配置文件时, 发现读取出来的值和配置文件里面的值有出入, 但是, 同样的代码, 放在别的项目里, 却能很好的执行, 然后, 我想, 难道iniFile这个类在线程里执行的时候会出错?

 

然后, 我尝试写了 int nPort = 443; 简单的赋值语句, 竟然发现nPort的值, 不是443, 我晕.
还有就是, 命名对一个函数打了断点, 单步执行就是进不去.

 

后来请教高人, 发现问题是, 使用了编译选项使用了优化,
优化导致, 单步调试的时候, 断点并非在真是的地方, 程序的执行顺序也被打乱. 况且我使用的是 release模式.

修改 编译选项 C/C++->优化-->禁用. 一切恢复正常.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  优化 引擎
相关文章推荐