我试图找出我的Qt应用程序崩溃的原因,调试不包含很多信息,因此很难找到原因。在使用断点后,我发现最接近崩溃的线路可能是w.show()
调用(应用程序的GUI在任何按钮或任何按钮出现之前都会冻结)。我的主要功能是正是这一点:Qt应用程序在启动时崩溃在MainWindow.Show()调用
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
// disable Window's maxminize button
const Qt::WindowFlags flags = w.windowFlags()^Qt::WindowMaximizeButtonHint;
w.setWindowFlags(flags);
w.show();
return a.exec();
}
达到所在行w.show()
时,在应用程序启动(但不正常,GUI frooze,正如我前面提到的),并在几分钟后,我得到了一个段错误和调试器是这样的:
我该如何解决这个问题?我在这已经有几天了,试图让调试器提供更多的信息,以便我可以追溯到SEGFAULT
的原因,但没有这样的调试器信息,我不知道该怎么做。
我的Qt版本:
我已经通过在构造函数的每一行中放置一个断点来尝试#1,它已到达构造函数的罚款结束。所以错误不存在。 #2:与#1相同。 #3我不会在应用程序启动时调用它。所以我想它也不会。 #4感谢提示,如果我花更多时间在这个上,我会尝试在Linux上。 #5:我现在试着连接到vs调试器。再次感谢! – Jack