MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); }
1、QMainWindow 是 MainWindow 的父类
2、QWidget *parent 中的 parent 值赋值给 QMainWindow(parent) 中的 parent,这其实是用到C++的语法,执行MainWindow的构造函数前先执行父类QMainWindow的构造函数
3、写这句 QMainWindow(parent) 的原因是 new 一个 MainWindow 对象可以指定父对象,从而使用 Qt 提供的内存自动回收机制
4、QWidget *parent 中为 QWidget 的原因是 QWidget 为窗口类型的类的基类,对于其他父类(比如非QMainWindow,即非窗口类),parent类型是 QObject
5、ui(new Ui::MainWindow)的作用相当于 ui = new Ui::MainWindow,即对对象 ui 进行实例化