我编写了一个Qt应用程序,我调用了许多构造函数:
Object o = new Object(blabla);
我无法删除它们,直到用户关闭程序。
单击关闭按钮(或cmd-Q)时,我调用此函数:
qApp->quit();
现在这个功能是否会删除以前分配的所有内存,或者我必须自己手动执行此操作吗? 我已经查看了退出函数的文档,但它没有提到它。
答案 0 :(得分:0)
该函数停止主线程的事件循环并将控制权返回给主函数
如果你的主要是:
int main(int argc, char *argv[]){
QApplication qApp(argc, argv);
MyQObject obj();
return qApp.exec();
}
然后RAII将删除将传播给孩子的obj
如果你需要清理其他资源,那么你可以使用qAddPostRoutine
添加一个清理函数,这些函数将从qApp
析构函数