unique_ptr:禁止拷贝,只能通过Move语义来转移。 release方法放弃内部对象的所有权,将内部指针置为空, 返回所内部对象的指针, 此指针需要手动释放 reset方法销毁内部对象并接受新的对象的所有权
scoped_ptr:不能转让管理权。也就是说,scoped_ptr禁止用户进行拷贝与赋值(除了使用reset成员函数重置内部指针所指的对象,又或者使用swap成员函数交换指针的所指的对象)。它能够保证在离开作用域后对象被自动释放。
shared_ptr:可以共享指针的所有权,内部通过指针的引用计数实现。