Qt平台下C++内存管理 2021-08-10

01 编程碎念我的编程观念,是在公司砖海中,受导师和大咖影响逐步形成。文中观点均来源于真实的技术实践,部分理念也是继承前人的设计成果,如有侵犯的地方请告知。在此特别感谢给予我点拨的人,站在大咖的肩膀上,让我们看得更远。文中提到的编程观念,大部分是基于C++实现的基础技术,有Qt框架相关的,也有设计模式、面向对象相关的。可能大家会想,现在都是AI云的时代了,这些太老了。但我认为,这些才是编程的基础,这就是正确的编程世界观。

02 内存管理某日,我在调试bug的时候,发现Qt源码中已经少有“”形式的指针了。回想公司的代码,大多写于2010年,满满的星,我闭了一下眼睛,感觉到熟悉的腐败味道。2019年接手一个项目,一个反复无常近乎夭折的项目。在此之前,已经有同事在里面挣扎了几月,眼看要发布版本了,压力测试却不能运行3时。C++编程中,内存一直就是显著的问题。在Qt平台中,我推荐使用Qt智能指针、对象树、大内存技术来进行内存管理。

03智能指针范围指针QScopedPointerQScopedPointer p(new MyClass ());Scope为“范围”的意思。可以理解为,QScopedPointer对象p管理的内存,在p生命周期内有效。这是一个在项目中经常使用的智能指针,经常使用的场景:1、类的成员指针

class MyPrivateClass; 
class MyClass
{
   
  private
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值