当前位置:网站首页>Summary of the use of qobjectcleanuphandler in QT
Summary of the use of qobjectcleanuphandler in QT
2022-06-28 18:45:00 【litanyuan】
background
QObjectCleanupHandler Class for cleanup QObject Class object , It can usually be used as a resource Cleaner .
Monitor object lifecycle
①. summary
QObjectCleanupHandler The objects managed in are delete It will be automatically deleted from the managed image list , It can be used to monitor the life cycle of objects .
②. Code example
QtClassDemo * demo = new QtClassDemo(nullptr);
QObjectCleanupHandler * demoWatch = new QObjectCleanupHandler;
connect(ui.pushButton, &QPushButton::clicked, [demo, demoWatch]() {
demoWatch->add(demo);
});
connect(ui.pushButton_2, &QPushButton::clicked, [demo, demoWatch]() {
delete demo;
});
connect(ui.pushButton_3, &QPushButton::clicked, [demo, demoWatch]() {
if (demoWatch->isEmpty())
{
qDebug() << " demo have been deleted ";
}
});

Automatic cleanup of objects
①. summary
QObjectCleanupHandler Objects are automatically destructed delete The objects it manages , It can be used for automatic deletion of dynamic objects .
②. Code example
connect(ui.pushButton, &QPushButton::clicked, [&]() {
QObjectCleanupHandler objectHandler;
objectHandler.add(new QtClassDemo("demo1"));
objectHandler.add(new QtClassDemo("demo2"));
objectHandler.add(new QtClassDemo("demo3"));
objectHandler.add(new QtClassDemo("demo4"));
});

Batch cleanup of dynamic objects
①. summary
QObjectCleanupHandler Of clear Method Society delete All the objects it manages , It can be used for batch deletion of dynamic objects .
②. Code example
connect(ui.pushButton, &QPushButton::clicked, [&]() {
QObjectCleanupHandler * objectHandler = new QObjectCleanupHandler;
objectHandler->add(new QtClassDemo("demo1"));
objectHandler->add(new QtClassDemo("demo2"));
objectHandler->add(new QtClassDemo("demo3"));
objectHandler->add(new QtClassDemo("demo4"));
objectHandler->clear();
});

边栏推荐
- memory thrashing
- use. NETCORE's own background job, which simply simulates producers and consumers' processing of request response data in and out of the queue
- 几行代码就能实现复杂的 Excel 导入导出,这个工具类真心强大!
- Konva series tutorial 3: Customizing drawings
- Yixin Huachen: real estate enterprises want to grasp the opportunity of the times for digital transformation
- C语言指针的一些易错点
- render函数解析
- CORBA 架构体系指南(通用对象请求代理体系架构)
- NFT流动性协议的安全困局—NFT借贷协议XCarnival被黑事件分析
- 业务层修改--根据现有框架的反推修改
猜你喜欢
随机推荐
sqrt()函数的详解和用法「建议收藏」
深入解析kubernetes中的选举机制
Huawei cloud AOM released version 2.0, and three features appeared
Michael Wooldridge, professeur à l'Université d'Oxford: comment la communauté de l'IA voit les réseaux neuronaux depuis près de 40 ans
注意!PMP紧急缓考今天就截止了!
Mybayis之核心主件分析
闭包的理解
About Covariance and Correlation(协方差和相关)
Easyexcel learning notes
618 activity season - the arrival of special discounts for hundreds of low code platforms
Opencv中使用Tracker实现物体跟踪
堆的概念和代码实现
Openfire用户以及群组关系移植
电子商务盛行,怎么提高商店转换率?
百度时间因子添加
微信小程序接入百度统计报错 Cannot read property ‘mtj‘ of undefined
独立站卖家如何高效管理复杂的Facebook主页?
东方财富软件股票开户是靠谱的吗?在哪开户安全
Lumiprobe非荧光叠丨氮化物研究丨3-叠丨氮丙醇
SMARCA2抗体研究:Abnova SMARCA2 单克隆抗体方案








