CDocumentクラスの一部のメンバーは実際にはCSpriteであるため、CDocumentが実際に宣言される前に、CDocumentという名前の別のクラスからCSpriteという名前のクラスを継承したいと思います。混乱しないように願っていますか?これが私のコードです:
class CSprite: public CDocument {}
class CDocument
{
public:
CDocument();
~CDocument();
CSprite * AddSprite(string Name);
CSprite * GetSprite(string Name);
};
「基本クラスが未定義」というエラーが発生します。これはまったく不可能なのではないかと思います。それは...ですか?これを行う理由は、コードの可読性を高めるためです。すべてのドキュメントは多くのスプライトを持つことができます。スプライトは、実際には他のスプライトを内部に持つことができるドキュメントです。