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

白山建设局网站品牌网站建设解决方

白山建设局网站,品牌网站建设解决方,深圳网站制作哪家价格便宜,国际网站怎么注册免费的在上一篇博客我们已经学会了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/a/409497.html

相关文章:

  • 网站关键词推广哪家好事业单位的网站建设费列哪
  • 西宁网站建设公司用wordpress建立网站
  • 如何用云服务器建设网站网站建设立项申请书
  • 做游戏交易网站有哪些内容上海建设摩托官方网站
  • 网站建设模板套用中山建站公司
  • 手机企业网站设计网站建设1000字
  • 山东省建设安全生产协会网站上海seo排名
  • 精品网站央视新闻的新闻
  • 免费wap建站的网址是什么了网站安全检测可以检测哪些内容风险信息
  • 建站模板有哪些网站主题说明怎么写
  • 最常见企业网站有哪些wordpress 页面模版
  • 小网站做几个关键词排名好的网站关键词优化企业
  • 成都网站建设07fly创建网站购买域名要注意什么
  • 如何做下载网站赚钱化德网站建设
  • 网站建设黄页视频嘉兴建站服务
  • 网站开发都是用什么做的网站建设特效大全
  • 成都网站建设工资公司网站是用什么软件做
  • 淘宝客建立网站推广怎么做成都app开发
  • 重庆网站价格杭州 做网站
  • 建手机端网站佳匠网站建设
  • 域名不变 新网站搭建什么网站能盈利
  • 网站打开慢什么原因呢网站登录界面设计
  • 敦煌网网站评价镇江网站排名优化
  • 做大型网站建设宁波网站优化公司电话
  • 在自己的网站做百度搜索框wordpress调用目录下
  • 深圳市移动端网站建设详情页设计与制作
  • 台州市城乡建设规划局网站青岛制作企业网站
  • 新网站如何做优化北京网页
  • 微网站搭建腾讯短链接生成
  • 关于幼儿建设网站ppt模板app软件推广怎么做