分类:c++| 发布时间:2015-11-14 20:48:00
在之前的几篇文章中,我们讨论了常见的 C++ 智能指针以及其应用场景。
C++ 智能指针只要有以下几种:
普通智能指针通常用于需要确保在生命周期结束时能否释放资源的情况。
常见的开源实现有:
带引用计数的智能指针是一个共享对象的智能指针。 可以用于大多数的场景,根据是否运行于多线程环境可以选择是否实现为线程安全。
常见的开源实现有:
强指针/弱指针 主要解决了带引用计数的智能指针无法处理循环引用的问题。
常见的开源实现有:
侵入式智能指针是一个轻量级的 shared_ptr,相比 shared_ptr 消耗更少的资源。 多用于对性能要求较高的场合。 但是需要按侵入式智能指针的要求在客户类中处理引用计数。
常见的开源实现有:
本系列文章中的示例代码可以从以下地址获取:
https://github.com/chenjianlong/books-code/tree/master/cpp-smart-pointer