QT内存知识点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT内存知识点相关的知识,希望对你有一定的参考价值。

参考技术A

在Qt中,以下情况下你new出的对象你可以不用亲自去delete:

实例1

运行正常,退出时会崩溃 ,因为label被close时,将会 delete 这儿label对象,但label对象却不是通过new分配到heap中的。
为了使得用户减少自己显式使用delete,Qt将delete隐藏的比较深。这样一来, 不使用new为对象分配空间时 ,反倒需要多多小心了。

实例2

因为退出时,w 比 label 先被析构,当 w 被析构时,会删除chilren列表中的对象,也就是这儿的 label。但 label 却不是通过new分配在heap中,而是在stack中,delte stack中的东西会导致崩溃。

QT内存管理机制: https://www.cnblogs.com/apocelipes/p/9991845.html

以上是关于QT内存知识点的主要内容,如果未能解决你的问题,请参考以下文章

这个 Qt 代码会泄漏内存吗?

QT源码学习 | 编译器知识点

[Qt小知识集锦]QT的5个基础知识,你知道几个

Qt进程间通信及内存共享,信号量,锁机制,线程同步

QT从控件部分知识点整理

00QT知识点学习大纲