当前位置: 首页 > wzjs >正文

上海城乡建设学校网站进入百度知道首页

上海城乡建设学校网站,进入百度知道首页,南昌网站建设一般多少钱一年,网站设计大作业在上一篇博客我们已经学会了QT的坏境安装以及打印一个hello world,但是如果有细心的朋友看了代码,就会发现有一个严重的问题,从C语法看来存在内存泄漏。 上面的代码实际上并没有发送内存泄漏,是不是觉得有点奇怪?大家有…

在上一篇博客我们已经学会了QT的坏境安装以及打印一个hello world,但是如果有细心的朋友看了代码,就会发现有一个严重的问题,从C++语法看来存在内存泄漏。

上面的代码实际上并没有发送内存泄漏,是不是觉得有点奇怪?大家有没有发现上面的new代码里面传了参数,这是将this对象也就是parent与QLabel对象建立了父子关系,parent对象会将挂靠在parent里面利用类似于树形结构进行管理,里面有一个列表存储了挂靠在parent下的子对象,在parent对象释放的适合会将子对象也释放掉,为什么我们不手动释放呢?有两个原因

1,防止粗心大意导致内存泄漏(作用类似于C++智能指针)

2,代码一下就运行结束了,我们的窗口布局如果自己释放内容也一下子就结束了,利用对象树就可以在窗口关闭的合适时机释放,看接下来的代码和运行图。

注:挂到对象树上面就不要手动释放哦,可能导致资源重复释放和破坏对象树。

注意:挂的是空指针,不然可能重复释放资源和破坏对象树哦。

其实并不是代码出现了问题,而是没等我们看到这个“hello world”就被释放了,因此我们需要使用对象树来释放,让它的生命周期和窗口一样。

我们可以通过对QLable封装一下看到这个现状,下面是封装代码

注:为什么要用QDebug,因为使用C++的cout编码会和qt的编码冲突,打印乱码,而QDebug是qt的函数,会对字符编码集进行处理。

运行结果:

我们可以看到析构函数没有打印,代表还没有执行,那我们叉掉窗口试试

这就代表子对象析构是和父对象一起析构的,而且是窗口关闭后析构的,如果我们自己手动释放会怎么样呢?

这更加验证前面的话。

欧克,今天就到这里,如果有所收获的话记得点赞收藏哦。

http://www.dtcms.com/wzjs/239608.html

相关文章:

  • 网站建设分金手指排名二六重庆seo报价
  • 专业做蛋糕的网站app推广团队
  • 福州光电网站建设百度关键词分析
  • 网站的制作方案优化网站关键词排名软件
  • 安徽建设信息网站南京 seo 价格
  • 深圳网站开发服务站长工具爱站网
  • 中山网站建设文化咨询排名优化怎么做
  • 东昌府网站建设公司百度推广开户多少钱
  • 私人兼职做网站开发推广关键词排名方法
  • 深圳网站设计兴田德润官方网站周口seo推广
  • 网站开发php技术淘宝seo搜索优化工具
  • 做豆制品的网站长尾词seo排名优化
  • 大网站建设大连百度网站排名优化
  • 签约做网站模板班级优化大师app下载
  • 网站怎样多语言好用的种子搜索引擎
  • 网站开发滚动字幕上下小红书seo排名优化
  • 长春做网站哪个公司好企业建站用什么好
  • 图片网站模板精准营销系统
  • 网站制作方案的重要性网络营销产品策略的内容
  • wordpress 默认robots.txtaso优化方案
  • 燕郊疫情最新消息谷歌seo工具
  • 综合性门户网站有哪些百度统计代码安装位置
  • 大连建设网节能办公室网站国内比较好的软文网站
  • 英文网站模板优化关键词排名seo软件
  • 静态网站的建设模板北京网站seo哪家公司好
  • 网站建设 计算机软件开发税点放心网站推广优化咨询
  • 怎么做旅店网站长沙百度网站推广公司
  • 域名除了做网站还能做什么企业官方网站怎么申请
  • 兰州公司做网站的价格站长工具seo综合查询问题
  • 哪个网站做logo赚钱杭州seo中心