私はOpenGLとDirectXを使用しており、オブジェクト指向ゲームクラスの基本の開発を開始しました。現在のクラスの構造は次のとおりです。
オブジェクト
---|---アクター
---------|---ポーン
---------|---コントローラー
だから私は継承するPawnと継承するControllerクラスを持っています。ActorObject
問題はController、ポーンクラスのの参照とPawnコントローラークラスののインスタンスが必要なことです。
このため、私は前方宣言Pawnし、Controller次のようにしていActor.hます。
// Actor.h
// (...) Actor Declaration (...)
class Pawn;
class Controller;
そしてPawn.h:
// Pawn.h
class Pawn : public Actor
{
private:
    Controller* controller;
public:
    void DoSomethingWithController(void);
}
これはすべて良いことであり、エラーはありません。問題は、そのクラスのメンバーにアクセスしたい場合です。
void Pawn::DoSomethingWithController(void)
{
    // this->controller-> can't access members like this (members not found)
}
では、PawnにControllerのポインターを設定し、ControllerにPawnのポインターを設定して、それらを異なるファイル(.hと.cpp)に保持し、同時にそのメンバーにアクセスできるようにするには、どうすればよいですか?
お時間をいただきありがとうございます。:D
[さらに情報が必要な場合は提供します]