我想在Qt中實作編譯C++源代碼,請問怎么通過MinGW64的g++.exe的退出代碼確定是否編譯出錯呢
void MainWindow::on_compile_clicked()
{
// 獲取檔案路徑
QFile f(ui->filename->text());
if (!f.exists()) {
// 找不到檔案
QMessageBox::warning(this, tr("Not found"), tr("File doesn\'t exist!"));
return;
}
// 生成引數
QStringList argument = genArgument();
// 選擇編譯器(目前只支持MinGW64)
QString main = ".";
switch (compiler) {
case MINGW64: main += "\\MinGW64\\bin\\g++.exe"; break;
}
// 編譯
QProcess *process = new QProcess(this);
process->setProgram(main);
process->setArguments(argument);
connect(process, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(CompileFinished(int, QProcess::ExitStatus)));
connect(process, SIGNAL(readyRead()), this, SLOT(readyRead()));
process->start();
}
void MainWindow::CompileFinished(int exitcode, QProcess::ExitStatus status) {
// 編譯結束
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/207363.html
標籤:C++ 語言
