【问题标题】:WINAPI - Window shows up in debug build, but not in release build [closed]WINAPI - 窗口显示在调试版本中,但不在发布版本中[关闭]
【发布时间】:2013-03-09 19:19:11
【问题描述】:

在尝试开发自己的游戏引擎时,我最终遇到了在处理 WINAPI 时无法解决的问题:我的游戏窗口显示在调试版本中,但不在发布版本中。在我关闭命令行后,进程本身也会一直挂起。

这很奇怪,因为代码没有任何变化。代码保持不变,调试和发布版本具有默认设置(不包括库链接)。

如果时间不长,我会发布一些代码。我使用 pimpl-idiom 使我的类界面更加干净和跨平台。我不知道这是否与此有关。我唯一的猜测是优化可能会导致一些问题,但我对此表示怀疑。这个问题怎么解决?

【问题讨论】:

  • 有可疑代码吗?
  • 发现问题:优化。各种优化破坏了功能,窗口不会出现。逆天。它们有什么问题(我的编译器是 GCC 4.6,我使用 Code::Blocks IDE)?
  • 好吧,如果可能的话,用VS2012试试吧……它真的让事情变得更容易了。
  • ͡° ͜ʖ ͡° 确定它的跨平台功能吗?
  • 没有看到任何代码我只能猜测,但我会说你被 undefined behavior 咬了。

标签: c++ winapi window show


【解决方案1】:

通过使用过程方法为 Windows 端口创建特定实现来解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-26
    • 2022-07-01
    • 1970-01-01
    • 2021-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-13
    相关资源
    最近更新 更多