这是Qt mainwindow.cpp中的自动生成的功能代码。
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
}
这会是同一件事吗?
MainWindow::MainWindow(QWidget *parent)
{
QMainWindow = parent;
ui = new Ui::MainWindow;
}
答案 0 :(得分:5)
没有。我相信QMainWindow
是一个基类,所以QMainWindow=parent
根本不是替代品。至于ui
任务。在第一种情况下,它将使用new Ui::MainWindow
进行初始化,而在第二种情况下,它将在初始化后进行分配。在复杂对象的情况下,它可能会导致显着的性能损失,也可能无法在构造字符串之后正确初始化对象。