草庐IT

DeletableBase

全部标签

c++ - 这是一个合格的软件设计吗?

我目前正在使用C++开发一款游戏。由于没有垃圾收集器,因此必须始终小心地删除对象,并确保这些对象一旦被删除就不会再被访问。现在随着项目的增长,一些对象可能会从越来越多的地方被引用。例如,我在游戏中的单位可能会从渲染器、场景层次结构、选择机制、HUD等中引用。现在-如果一个对象被删除,必须确保所有其他引用该对象的类都将收到通知。或者让我们换个说法——如果我创建一个可能引用我的一个单元的新类,我还必须更改单元的代码(或单元管理器的代码或任何删除单元的模块,如果它得到destroyed)以确保这个新模块知道它当前引用的特定单元何时被删除。现在我认为可能有一个简单的事件驱动的通用方法来解决这个