当事件循环未启动时,Ungraceful / kill Qt应用程序

时间:2016-02-22 00:39:11

标签: c++ qt qapplication qcoreapplication

如果由于事件循环尚未启动,QCoreApplication不起作用,如何终止正在运行的Qt应用程序(exit)。

http://doc.qt.io/qt-5/qcoreapplication.html#exit

  

调用此函数后,应用程序将离开main   事件循环并从对exec()的调用返回。 exec()函数   返回returnCode。如果事件循环未运行,则此函数   什么都不做

我找到的一种(愚蠢?)方法是启动事件循环并调用QCoreApplication::exit again,但这是我最好的选择吗?

1 个答案:

答案 0 :(得分:1)

如果我正确理解你的问题,你还没有调用QApplication :: exec(),因此你的事件循环还没有开始。

如果尚未调用exec()来启动事件循环,为什么不在调用exec()之前调用stdlib exit()函数或检查错误条件

E.g。在main.cpp中

if(!somethingWentReallyWrong) {
    a.exec(); // Where a is your QApplication or QCoreApplication instance
} else {
    return myErrorCode;
}