QApplication é derivado de QCoreApplication e, portanto, herda quit()
qual é um slot público de QCoreApplication
, portanto, não há diferença entre QApplication::quit()
e QCoreApplication::quit()
.
Como podemos ler na documentação QCoreApplication::quit()
dele "diz ao aplicativo para sair com o código de retorno 0 (sucesso)". . Se você deseja sair porque descobriu a corrupção do arquivo, talvez não queira sair com o código de retorno zero, o que significa sucesso, então você deve chamarQCoreApplication::exit()
porque pode fornecer um returnCode diferente de zero que, por convenção, indica um erro.
É importante observar que "se o loop de eventos não estiver em execução, esta função (QCoreApplication :: exit ()) não fará nada" , portanto, nesse caso, você deve chamar exit(EXIT_FAILURE)
.
qApp->exit();
Se você estiver usando o Qt Jambi, isso deve funcionar:
fonte
se você precisar fechar seu aplicativo a partir de main (), você pode usar este código
O programa será encerrado se o OpenSSL não estiver instalado
fonte
if(!QSslSocket::supportsSsl()) {return 0;};
. Como app.exec () não foi chamado nessa linha, app.exit (0) não faz nada, consulte a documentação de QCoreApplication :: exit (): se o loop de eventos não estiver em execução, essa função não funcionará.exemplo
fonte