gpt4 book ai didi

c++ - 如何将一个对象声明为我的类的一部分?

转载 作者:行者123 更新时间:2023-11-30 05:22:21 25 4
gpt4 key购买 nike

在过去的几个周末里,我一直在开发一款游戏。你们中的一些人可能已经在其他问题中看到过代码片段。我称之为魔法。

在 Magick 中,法术由 Spell 类控制,如下所示:

class Spell { 
public:
int damage;
magicTypes type;
int manaCost;
};

其中 magicTypes 是一个枚举类。但是,当我在我的代码中运行它时:

Spell fireball; 
fireball.damage = 50;
fireball.type = fire;
fireball.manaCost = 50;

我收到这个错误:

magick1.cpp:117:1: error: ‘fireball’ does not name a type

我在每次使用 fireball 咒语时都会遇到这个错误。

这个类看起来与我的其他类的设置相同,而且它们有效,但我终究无法弄清楚为什么这个不可行。

枚举定义如下所示:

enum class magicTypes { 
fire,
water,
earth,
air,
dark,
light
};

最佳答案

对于枚举类,您应该指定类名:

 fireball.type = magicTypes::fire;

如果你想转换为 int 你可以这样做:

int i = static_cast<int>(magicTypes::fire);

关于c++ - 如何将一个对象声明为我的类的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39688907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com