【发布时间】:2015-02-22 08:26:45
【问题描述】:
有没有办法找出一个 shared_ptr 被引用的 weak_ptr 的数量?
unique()/use_count() 可用于查找 shared_ptrs,但是否有类似的构造用于查找引用的 weak_ptrs。
只有当没有weak_ptr 引用它时,我才想释放shared_ptr 持有的资源。所以将来某个时候如果我尝试从这个weak_ptr创建一个shared_ptr,我不应该得到一个nullptr。
目前在 C++11 中是否可行?
【问题讨论】:
-
如果你必须这样做,我会重新检查你的设计
-
"只有在没有weak_ptr 引用的情况下,我才想释放shared_ptr 持有的资源。"那为什么不到处使用 shared_ptr 呢?
-
他在技术上走错了路,但问题是公平的,反对票的原因是什么?!
标签: c++ c++11 shared-ptr smart-pointers weak-ptr