在我的 C++ 项目中,我有一个Engine
类和一个Object
类。
我的问题在于我的实例是如何Object
创建的。目前,这是通过使用类中的CreateObject(parameters)
函数来完成的Engine
。这会将一个新的实例添加到Object
一个实例中。std::vector
Object
我想Object
在我的Engine
类中维护这个实例列表,但不需要该CreateObject(parameters)
函数。我这样做的原因是我可以创建可以继承Object
但仍被添加到此列表的新类。此列表的原因是(在Engine
)我可以遍历Object
已创建的每个实例。
这最终意味着我Object
用类似的东西创建我的实例Object newObject = Object(parameters);
,但仍然让Engine
类维护所有Object
实例的列表,而不需要Object
引用实例Engine
或列表以将自身添加到该列表中(如Object
should不知道它所在的列表)。 这可以做到吗?