在Qt Creator中运行发布版本时会收到以下错误消息:
The program has unexpectedly finished.
.....exe exited with code -1073740791
在调试器中以调试模式成功运行。在另一个线程中发现这是
0xc0000409 = STATUS_STACK_BUFFER_OVERRUN
错误。 Program和Qt是使用VS C ++构建的。问题出在哪里?或者我应该运行一些分析器来检查内存访问?
答案 0 :(得分:3)
当程序在调试中运行但在发布时崩溃时,往往是由于未初始化的变量。调试版本,特别是使用调试器运行,可能会在使用前为您清除内存,因此它可以隐藏问题。我建议你先检查未初始化的变量。
如果您真的遇到困难,请更改配置以构建发布版本的调试符号,然后在崩溃时附加调试器并查看代码正在执行的操作。
或者,在代码中的不同位置使用qDebug将调试文本打印到控制台,看看是否可以从中找出问题所在。