Qt智能指针学习总结

本文详细介绍了Qt中用于防止内存泄漏的智能指针,包括QPointer、QScopedPointer、QSharedPointer以及它们与C++标准库中对应的智能指针类型。智能指针通过RAII机制确保对象在适当的时候被删除,避免了手动管理内存可能导致的问题。文章讨论了各种智能指针的特性和适用场景,并提供了使用示例。
摘要由CSDN通过智能技术生成

   我们从堆中申请、释放内存时,必须使用指针。构建复杂的数据结构时,也离不开指针。但是在指针的使用时,我们可能不知道一个指针所指的对象已经被析构,从而错误地通过该指针去访问一个已经失效的对象。另外一个常见的错误是:我们使用new运算符创建一个对象并令一个指针指向该对象,由于种种原因,我们却没有对这个指针使用delete 析构该对象,造成内存泄露问题。

   智能指针是为解决内存泄漏而产生的,使得我们在C++中对内存的泄露问题得到更好的解决和预防内存泄露问题,Qt提供的一组类模板,每个类模板对普通指针进行封装。每个类模板重载了与指针相关的运算符,如“*”,“->”等,使得每个类模板均具有普通指针的使用格式。同时,每个类模板提供了普通指针所不具备的功能,这些类模板被称为智能指针(Smart Pointer)。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大王算法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值