智能指针unique_ptr
当unique_ptr被销毁时,会执行delete操作。
不可以复制或赋值但是可以进行转移(内部具有移动语义的实现)
shared_ptr
复制时引用计数加1
weak_ptr和shared_ptr联合使用时可以解决循环引用的问题。
weak_ptr没有重载 *(解引用)和->所以无法直接访问资源
如果要访问资源,只能使用lock()方法来提升为shared_ptr
在类内部希望获取到本对像智能指针
必须要继承自辅助类enable_shared_from_this
不要将相同的原生裸指针交给相同或不同的智能指针会出现析构两次的情况