• 3522阅读
  • 1回复

! vs Debug and Release [复制链接]

上一主题 下一主题
离线neeme
 

只看楼主 倒序阅读 楼主  发表于: 2016-07-08
大家好:
         我的APP 有一个Timer,  timeout  触发一 slot_time_out()
有一个类成员:bool  m_disp。
slot_time_out()
{
   m_disp  =  !m_disp;
}
这样,生成的Debug APP,可以正常工作,但 Release APP 不正常!
后来改成:
slot_time_out()
{
   if(m_disp == true)  {
        m_disp = false;
   } else {
       m_disp = true;
  }
}
这样后, 生成的 Debug 与  Release版本的 APP 都能正常工作! 请问为什么? 谢谢!  
开发平台:Ubuntu 16.04 64bit + Qt 5.9.4
运行平台:Ubuntu 16.04 64bit
离线johnyork

只看该作者 1楼 发表于: 2016-07-09
是不是这个成员没初始化?
bool型变量的值对应关系一般是:
1-true
0-false
某些编译器可能将非0、1的值视为非法,使用逻辑取反操作得不到正确的值。
快速回复
限100 字节
 
上一个 下一个