【发布时间】:2013-08-19 12:44:26
【问题描述】:
#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,但它仍然会产生错误。
【问题讨论】:
-
你有
class GameState;但该类实际定义在哪里?
标签: c++