#include <iostream>
class Core;
class State;
int main (){
std::cin.get();
return 0;
}
class State{
public:
State(Core* core){
core->setState();
}
};
class Core{
public:
Core(){
State state(this);
}
void setState(){
std::cout << "setting state" << std::endl;
}
};
「未定義型の使用」エラーが発生し続けます。両方のクラスを前方宣言すれば問題は解決すると思いましたが、わかりません。私が見逃しているのは愚かなC ++構文ですか?
編集: gamestate のタイプミスについて申し訳ありません。State に変更しましたが、それでもエラーが発生します。