首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Qt中进行退出时的清理

如何在Qt中进行退出时的清理
EN

Stack Overflow用户
提问于 2011-11-17 18:19:51
回答 1查看 24.1K关注 0票数 26

我想在Qt应用程序退出之前,在该应用程序中做一些内部事务(比如写入文件等)。如何在Qt中访问此函数(exit或其他调用)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-17 18:35:07

您需要将带有清理代码的插槽连接到QCoreApplication::aboutToQuit()信号。

这允许您使用QObject::deleteLater()删除QObjects,并且对象将被删除,因为您尚未离开主应用程序事件循环。

如果您使用的是需要“shutdown”调用的C库,则通常可以在从QCoreApplication::exec()返回之后执行此操作。

这两种技术的示例:

代码语言:javascript
复制
int main(int,char**)
{
  QApplication app;
  library_init();
  QWidget window;
  window.show();
  QObject::connect(&app, SIGNAL(aboutToQuit()), &window, SLOT(closing()));
  const int retval = app.exec();
  library_close();
  return retval;
}
票数 38
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8165487

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档