28 lines
713 B
C++
28 lines
713 B
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
#include <QProcess> // ✅ 关键:要完整引入 QProcess
|
|
|
|
class CompileProcessManager : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit CompileProcessManager(QObject *parent = nullptr);
|
|
|
|
// 目前简单接受代码字符串,后面可以加更多参数
|
|
void runCompile(const QString &sourceCode);
|
|
|
|
signals:
|
|
void compileFinished(const QString &stdoutText,
|
|
const QString &stderrText,
|
|
int exitCode);
|
|
|
|
private slots:
|
|
void onProcessFinished(int exitCode, QProcess::ExitStatus status);
|
|
|
|
private:
|
|
QProcess *m_process = nullptr;
|
|
|
|
QStringList buildArguments(const QString &sourceCode);
|
|
};
|