C++中资源的回收依赖于显示定义的回收资源的函数。为了实现资源的自动回收,c++引入了一种能够近似自动回收的方法就是智能指针。
智能指针是基于一种叫做 RAII 的思想,(Resource Acquisition Is Initialization) 将资源的回收在定义变量的时候就设置好。智能指针的作用其实就是将资源的管理分配给每一个对象,随着对象的消亡而调用析构函数然后将资源粉碎掉。好处是:不需要显示的释放资源;采用这种方式,对象所需的资源在其生命周期内始终有效。
智能指针还应该具有指针一样的功能,因此需要对这些指针的相关功能实现重载。
一、shared_ptr 类
允许多个指针指向同一个对象或内存,创建时需要指明类型
shared_ptr<int> p ; //一个空的shared_ptr,可以指向int
浙公网安备 33010602011771号