C++描述英雄,射手s,辅助a分别和敌方法师m战斗hit()的过程,需要描述英雄的name,以及攻击方和被攻击方
时间: 2024-02-10 07:10:28 浏览: 16
好的,根据您的要求,我可以为您描述 C++ 中英雄的战斗过程。首先,我们需要定义一个 Hero 类,该类包含成员变量 name 和类型 type(射手s或辅助a),以及成员函数 hit(),用于发起攻击。
下面是示例代码:
```c++
#include <iostream>
#include <string>
using namespace std;
// 英雄类型枚举
enum HeroType {
SHOOTER,
SUPPORT
};
// 英雄类
class Hero {
public:
Hero(string name, HeroType type) {
this->name = name;
this->type = type;
}
void hit(Hero& enemy) {
cout << name << "(" << (type == SHOOTER ? "射手s" : "辅助a") << ")" << " 发起攻击 " << enemy.name << endl;
// 发起攻击的代码逻辑
}
private:
string name;
HeroType type;
};
int main() {
Hero shooter("射手s", SHOOTER);
Hero support("辅助a", SUPPORT);
Hero mage("敌方法师m", SHOOTER);
// 射手s 发起攻击 敌方法师m
shooter.hit(mage);
// 辅助a 发起攻击 敌方法师m
support.hit(mage);
return 0;
}
```
在上面的代码中,我们定义了 Hero 类,并在 main 函数中创建了三个英雄对象:射手s、辅助a 和 敌方法师m。然后,我们分别让射手s和辅助a 发起攻击 敌方法师m,调用 hit() 函数。在 hit() 函数中,我们输出了攻击方的名称和类型,以及被攻击方的名称,然后再实现发起攻击的逻辑。