QT笔记:软件退出,没有调用MainWindow的析构函数
我的情况是,界面没有用自带的关闭按钮,而是自定义,点击调用其 close(); 函数
测试发现,当关闭软件时,并没有调用析构函数。
解决方法:
在构造函数中,加上 setAttribute(Qt::WA_DeleteOnClose);
这也适用于,“子窗体的构造函数中初始化了父窗体的parent,当关闭子窗体时不会调用其析构函数”,这种情况,只需要把这行代码加入到子窗体的构造函数即可。
我的情况是,界面没有用自带的关闭按钮,而是自定义,点击调用其 close(); 函数
测试发现,当关闭软件时,并没有调用析构函数。
解决方法:
在构造函数中,加上 setAttribute(Qt::WA_DeleteOnClose);
这也适用于,“子窗体的构造函数中初始化了父窗体的parent,当关闭子窗体时不会调用其析构函数”,这种情况,只需要把这行代码加入到子窗体的构造函数即可。