Qt最近开始崩溃,没有原因。由于正在以编程方式启动另一种形式,最近正在将我的神经磨成牙髓的一种正在崩溃。 “必须在QWidget之前构造QApplication”显然是Qt 5.7。*版本的常见问题,到目前为止,我在StackOverflow中找到的解决方案都没有帮助我。

这是应用程序崩溃后收到的错误消息的屏幕截图:
c++ - Qt必须在QWidget之前构造QApplication-LMLPHP

这是我删除的部分代码,它使我可以重新启动应用程序而没有任何明显的问题:

#include "operations.h"
Operations o;
void mainWindow::on_thisButton_clicked()
    {
        o.show();
        this->hide();
    }

----

main.cpp根据要求:)
#include "mainWindow.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    mainWindow w;

    w.show();

    return a.exec();
}

最佳答案

试试这个:

#include "operations.h"

void mainWindow::on_thisButton_clicked()
{
    Operations *o = new Operations();
    o->show();
    this->hide();
}

如果不想每次单击按钮都创建一个新的Operations *o成员,则可能需要将mainWindow声明为ojit_code的成员,并将其初始化为构造函数。

10-08 20:04