c++中智能指针的使用,个人总结

打印 上一主题 下一主题

主题 822|帖子 822|积分 2466

一、什么是智能指针

  一般来讲C++中对于指针指向的对象需要使用new主动分配堆空间,在使用结束后还需要主动调用delete释放这个堆空间。为了使得自动、异常安全的对象生存期管理可行,就出现了智能指针这个概念。简单来看智能指针是 RAII(Resource Acquisition Is Initialization,资源获取即初始化) 机制对普通指针进行的一层封装。这样使得智能指针的行为动作像一个指针,本质上却是一个对象,这样可以方便管理一个对象的生命周期。
  智能指针作用总结:


  • 处理内存泄漏。
  • 处理空悬指针的问题。
  • 处理异常造成的内存泄露。
  注:智能指针和原生指针不要混用,使用不当可能会导致程序异常;
二、智能指针有哪些

  智能指针(动态内存管理)头文件
三、独占式智能指针(std::unique_ptr)

[code] 1 class SmartPointer 2 { 3 public: 4     SmartPointer() 5     { 6         cout
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用多少眼泪才能让你相信

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表