我有一个World类和一个Entity类。 World类创建新的Entites并返回指向它的指针。 如果我使用该指针我永远不确定该指针是否仍指向有效的实体,但我也不想使用shared_ptr,因为实体不会被删除,直到所有shared_ptr都被释放。所以过了一段时间我想出了这个指针:
Data Page B
Test类将收集指向它的指针,并在类被删除时使它们失效。
现在我想询问是否有人知道更好的实现或更多关于这种指针的信息。
我在Visual Studio 2017中编译并测试了上面的代码
答案 0 :(得分:2)
答案是肯定的,这种模式以前被很多人使用过。你刚刚创建了一个穷人(并且破碎了,因为至少有一个完全错误和一些次优的东西)重新实现了::std::weak_ptr<T>
。你应该考虑改用它。