shared_ptr先转weak_ptr再转shared_ptr,这两个shared_ptr是否是同一个
时间: 2023-07-18 10:48:44 浏览: 77
weak-ptr 和 shared-ptr 源码
不是同一个,转换成weak_ptr后再转换成shared_ptr,会创建一个新的shared_ptr对象。这是因为weak_ptr是一种智能指针,它不会增加所指向对象的引用计数,因此需要再转换成shared_ptr时重新创建一个新的对象,并将引用计数加1。此时,两个shared_ptr对象所指向的内存地址相同,但它们是不同的对象。
阅读全文