我有问题。 我有main.cpp文件,主游戏在哪里,以及包含类的CPlayer.h等少数头文件。在这个类中,我有动画,并使用枚举替换当前动画名称,如:
Class CPlayer
{
public:
Animation A[2];
int currAnim;
enum animationTitle
{
WALK,
ATTACK,
DESTROY
};
...
}
我将此类导入main。然后我不能这样做:
player.currAnim = ATTACK;
因为枚举是在头文件中。在CPlayer.h中,这个枚举起作用。
只有这样才有效:
player.currAnim = 1;
有没有办法解决这个问题,或者我还要将此枚举添加到main.cpp中? 我不希望在main.cpp中有数百个枚举...(对于每个对象,角色......)
由于
答案 0 :(得分:2)
然后我不能......因为枚举在头文件中
不正确。它不起作用,因为正确的语法是:
player.currAnim = CPlayer::ATTACK;
您在班级中定义了枚举。为什么?不确定,但这就是你所做的。