フォーマットされたコード:http://pastie.org/5074835
EntityクラスとComponentクラスの間に周期的な依存関係があります。クラス宣言を転送しようとしましたが、Componentのupdateメソッドにアクセスする必要があり、その方法ではアクセスできません。
再設計せずにこれを機能させる方法はありますか?
フォーマットされたコード:http://pastie.org/5074835
EntityクラスとComponentクラスの間に周期的な依存関係があります。クラス宣言を転送しようとしましたが、Componentのupdateメソッドにアクセスする必要があり、その方法ではアクセスできません。
再設計せずにこれを機能させる方法はありますか?
あなたは#include "Entity.h"
でする必要がありComponent.cpp
ます。
に含めEntity.h
ても問題ありませComponent.cpp
ん。それらをヘッダーファイルにインクルードすると、循環依存になります。さあ、 Component.cpp`に進んでください。Component.h
Entity.cpp
#include "Entity.h" in
すべてのメソッドで両方のクラスを宣言し、後でメソッドを定義しますか?
ヘッダ:
class B;
class A {
void method1(B b);
};
class B {
void method2(A a);
}
ソースファイル:
void A::method1(B b){
...
}
void B::method2(A a){
...
}