c – 创建一个非拥有者shared_ptr?

前端之家收集整理的这篇文章主要介绍了c – 创建一个非拥有者shared_ptr?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我对C 11很陌生,现在正试图通过避免直接使用指针来提高我的C技能.我正在尝试编写一个精灵管理器,它跟踪以前加载的精灵并释放未使用的精灵.我正在尝试使用shared_ptr(指向位图的指针),但是管理器还必须保持shared_ptr来创建精灵 – 所以引用计数不会下降到0.我可以以某种方式声明“父”shared_ptr在我的经理非拥有所以它不算作参考(并仍然创建该shared_ptr的拥有副本)?

解决方法

使用 weak_ptr.这将解决您的问题.您不需要释放它们,因为它们将被自动释放.使用weak_ptr上的锁来获取实际的shared_ptr.

use_count还会为您提供当前的引用数量.

猜你在找的C&C++相关文章