这是Qt mainwindow.cpp中自动生成的功能代码。
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
}
这会是同一回事吗?
MainWindow::MainWindow(QWidget *parent)
{
QMainWindow = parent;
ui = new Ui::MainWindow;
}
最佳答案
不。我相信QMainWindow
是基类,因此QMainWindow=parent
根本不是替代品。至于ui
分配。在第一种情况下,它将使用new Ui::MainWindow
进行初始化,而在第二个代码段中,将在初始化后进行分配。如果是复杂的对象,则可能会导致明显的性能损失,并且在构造后可能无法正确初始化对象。
关于c++ - 了解成员初始化器列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14094418/