<分区>
我是 C++ 的新手,我正在尝试编写一个简单的 2D 引擎。但是,当前结构存在问题,而在其他语言(AS3 等)中是可以的。我有两个类,一个叫 DisplayObject,另一个叫 DisplayObjectContainer。 DisplayObjectContainer 是 DisplayObject 的子类,但 DisplayObject 有一个指向 DisplayObjectContainer 父类的指针作为属性。我想不出一种方法来将彼此正确地包含在他们的文件中。我无法在 DisplayObject 中转发声明 DisplayObjectContainer,因为我需要在 DisplayObject 中访问 DisplayObjectContainer 的方法。
显示对象:
class DisplayObject
{
public:
DisplayObjectContainer *parent;
...
...this->parent->globalTransform...
...
显示对象容器:
class DisplayObjectContainer : public DisplayObject
{
public:
DisplayObjectContainer();
virtual ~DisplayObjectContainer();
protected:
private:
};
如有任何帮助,我们将不胜感激。谢谢!