【发布时间】:2015-03-26 08:30:50
【问题描述】:
我有一个班级Drawable 和一个班级DrawableManager。 DrawableManager 应该有一个指向Drawables 的指针容器,它可以在其中查找Drawable 对象的属性并适当地绘制它们。
现在我希望 Drawable 对象在创建时将自己添加到 DrawableManager 并在删除时将自己删除。这样的事情可能吗?如果是,可以这样做还是有更好的方法?
我现在拥有它的方式是shared_ptrs 到Drawable 对象和DrawableManager 有vector 的weak_ptrs 到这些对象,我手动将对象添加到管理器.不过我希望这个过程自动化。
【问题讨论】:
-
你可以在 Drawable 构造函数/析构函数中添加/删除它们
-
@Iosif Murariu:这就是我想要实现的目标。
-
自定义删除器怎么样?请参阅 this answer 到 other similar question。
标签: c++ containers c++14