枚举多文件游戏

时间:2014-03-14 20:19:06

标签: c++ enums int allegro

我有问题。 我有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中有数百个枚举...(对于每个对象,角色......)

由于

1 个答案:

答案 0 :(得分:2)

  

然后我不能......因为枚举在头文件中

不正确。它不起作用,因为正确的语法是:

player.currAnim = CPlayer::ATTACK;

您在班级中定义了枚举。为什么?不确定,但这就是你所做的。

相关问题