【问题标题】:This application has requested the runtime to terminate it in an unusual way QT C++此应用程序已请求运行时以不寻常的方式终止它 QT C++
【发布时间】:2014-02-09 19:51:24
【问题描述】:

我正在QT C++ 中开发一个 15 益智游戏。游戏有时运行良好,有时在运行过程中崩溃。我不知道问题所在。我查看了不同的论坛并找到了不同的建议。有人说这个错误是由于缺少dll等造成的。

出现一个窗口,错误如下

Microsoft Visual C++ Runtime Library
This application has requested the runtime to terminate it in an unusual way.
Please contact the application's support team for more information. 

【问题讨论】:

  • 这是来自消息框的full 错误消息吗? Qt4 还是 Qt5?
  • 这不是因为缺少 dll。仅凭这些信息,可能的原因就太多了,甚至在这里都无法提及。请提供更多信息。
  • @typ1232 是的,这是写在消息窗口中的完整消息。 QT Creator 2.0.1 基于Qt 4.7.0(32位)
  • @DNT 实际上我在游戏中使用向量来保存 15 个益智游戏的状态。向量的大小有时甚至可能达到百万。如果我在游戏中几乎没有随机播放,我的程序运行良好。我用其他电脑运行了这个应用程序,那台电脑也让我的应用程序崩溃了,错误也不同。其他电脑显示这个错误是由于 abort().
  • 如果它是数百万字节或整数,那很好,但如果它是数百万个大型结构或 qt 小部件......同样,你可能会以意想不到的方式使用你的向量 - 就像我说的那样,原因可能太多了,无法在没有细节的情况下进行推测。尝试断言您期望为真的每个条件,每个值范围,简而言之,在每个函数调用中添加所有先决条件并检查后置条件,直到其中一些断言首先触发,然后您的代码崩溃。然后你就会知道出了什么问题。

标签: c++ dll


【解决方案1】:

我解决了这个问题:实际上我正在访问一个不可用的矢量位置。 assert() 帮助我排除故障。谢谢@DNT

【讨论】:

    猜你喜欢
    • 2011-07-20
    • 1970-01-01
    • 2021-05-28
    • 2013-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-20
    相关资源
    最近更新 更多