对方法的调用最终完全不同

时间:2016-02-05 08:21:18

标签: c++ visual-studio visual-studio-2012 wxwidgets

我有一个奇怪的问题出现在wxWidgets库中,可以在调试器中轻松复制。它似乎不是wxWidgets特定的,所以我在这里问这个。

我执行某种非标准的初始化。在此初始化期间,调用方法wxAppBase :: Initialize()。 wxAppBase是我自己的App类的基类。在wxAppBase :: Initialize()中调用另一个方法OnInitGui(),此方法存在于wxAppBase以及我的派生类中。

这就是问题所在:在Debug Build中,everthing运行良好,OnInitGui()按预期执行。但是在Release-build中,我永远不会达到OnInitGui()方法,但最终却与OnInitGui()没有任何关系。所以看起来是非法的跳跃。

所有指针似乎都是有效的,这完全发生在wxWidgets库中。

任何人都知道什么可能导致这种行为以及如何解决这个问题?

欢迎每一个提示/想法/建议。

1 个答案:

答案 0 :(得分:0)

这看起来像一个糟糕的版本。使用完全相同的编译器和编译器选项清理所有内容并重建库和应用程序,问题可能会消失。