我試圖找出我的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