关于普通指针转换为智能指针的一些问题

  问题来源于需要将项目的share_ptr<T> 改成const T。如果一个普通指针ptr而言,如果用其构造智能指针sm_ptr,那么sm_pt在引用结束的时候会delete一次ptr。

如果ptr的new以及delete不由我们管理(也就是说外部还有一个delete),这个时候就double free了。

  总结一下,除非是自己new出来的指针,不然最好不要用普通指针构建shared_ptr。

原文地址:https://www.cnblogs.com/z1141000271/p/14991597.html