前言 关于智能指针大家或多或少都有听说过,因为在C++中没有GC,所以存在很多内存泄露的风险,所以基于RAII思想设计出了,智能指针,智能指针经过了很多个版本的迭代,从刚开始在C++98中推出了auto_ptr,但是auto_ptr不好用,它的设计存在重大缺陷,又因为C++的官方库更新的很慢,所以在接下来的n年中,没有改进,但是有一群大佬绝大C++库太简陋了,所以就自己搞了一个非官方的社区,写了一个库叫做boost,它里面重新写了智能指针。(boost库里面还有很多的其它东西),scoped_ptr/scoped防拷贝版本。shared_ptr/shared_ptr引用计数版本。weak_ptr-为了解决shared_ptr循环引用的问题。之后在C++11中官方引入了智能指针,参考boost的实现,稍微进行改进,其实C++11其它类似于右值引用移动语义等也是参考boost。unique_ptr:防拷贝版本,shared_ptr引用计数版本,weak_ptr解决shared_ptr循环引用的问题。 目录 详见内存泄露的危害 2.1RAII RAII(Resource...