• Qt 【关于跳转页面后当前页面(委托delegate)数据丢失的问题】


         这个是一个很低级的错误,之前po主急着完成任务,也是没注意看,窗口跳窗如下图所示:

    这个过程中都是click促发槽然后B*pB,pB->show,同理A*pA,pA->show,这个过程中就出现了内存泄露,因为窗口是不停的new然后show,

    就算当前是有数据的,但是new出了新窗口,旧的没有了,即旧的数据没有存在新的窗口上,因为嵌入式开发板子的内存不是很大,如果用长久时间,

    这样的算法肯定炸了,下图是5分钟前后内存使用对比:

    5分钟之前:

    5分钟之后:

    本身板子内存就不是很大,例如1G,五分钟吃100MB,暂且不说说句丢失【就算你保存文本然后在读取去解决】用不了一个小时,这个机器就因

    内存耗尽而死机从而影响用户体验。

    解决办法:

     

    不用new出新指针,灵活去使用show跟hide,并且在析构函数中判断下,之前窗口的指针是否存在,存在就delete,以防内存泄露,初始化NULL。

    所以这个需要多注意,不能由于急救忘记了这些重要的东西,虽然po主经常忘事。.......

    技术在于交流,经验在于分享...来自流若浅。

  • 相关阅读:
    数据库的字符集和校对集
    登录和退出Mysql
    启动mysql服务器
    Numpy
    如何用navicat导入数据?
    MySQL不能连接本地数据库10061
    使用navicat连接Mysql8.0出现2059错误
    leetcode笔记11 First Unique Character in a String
    leetcode笔记10 Intersection of Two Arrays(求交集)
    leetcode笔记9 Move Zeroes
  • 原文地址:https://www.cnblogs.com/liuruoqian/p/5578576.html
Copyright © 2020-2023  润新知