新人对局部变量加入对象树的问题
程序代码:
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); QPushButton *btn = new QPushButton("弹出对话框", this); connect(btn, &QPushButton::clicked, [=](){ QDialog dlg(this); dlg.resize(200, 100); dlg.exec(); }); }
两个问题:
1)上面这个代码dlg是lambda函数的局部变量,传入了this指针加入了对象树,lambda函数退出的时候dlg对象已经被析构,当dlg析构的时候是不是会自动退出对象树?
不然对象树析构的时候会拿dlg这个已经无效的对象来析构,这样应该会出问题吧?
2)是不是以后开发qt,只要终端没报error log,没崩溃,就可以认为没问题啊?