shared_ptr
是Boost库中的引用计数智能指针。
引用计数的问题在于它不能处理循环依赖。我在想如何通过C++来解决这个问题。
请不要提出像“不要创建循环”或“使用weak_ptr
”之类的建议。
编辑
我不喜欢那些只是建议使用weak_ptr
的答案,因为显然,如果你知道你将创建一个循环,那么你就不会有问题。而且,如果在运行时生成shared_ptr
,你也无法在编译时确定是否会有循环。
因此,请自行删除那些包含weak_ptr
的答案,因为我特别要求不要提供这种答案...