Tengo una QApplication que, dependiendo de los parámetros de línea de comandos, a veces no tiene una ventana GUI, pero simplemente se ejecuta sin GUI. En este caso, quiero cerrarlo con gracia si se presionó CTRL-C. Básicamente mi código se ve así:QApplication: Cómo cerrar con gracia en Ctrl-C
int main(int argc, char* argv[])
{
QApplication app(argc, argv);
... // parse command line options
if (no_gui) {
QObject::connect(&app, SIGNAL(unixSignal(int)),
&app, SLOT(quit()));
app.watchUnixSignal(SIGINT, true);
app.watchUnixSignal(SIGTERM, true);
}
...
return app.exec();
}
Sin embargo, esto no funciona. CTRL-C parece estar atrapado (la aplicación no muere), pero tampoco sale. ¿Qué me estoy perdiendo?
[Esto está muy bien documentado. Use la documentación.] (Http://doc.qt.io/qt-5/unix-signals.html) –