• 大小: 1KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-06-14
  • 语言: C/C++
  • 标签:

资源简介

一、 请把类Tool的定义补充完整,要求: 1. 类Tool有成员变量strength(int)和 type (char) 2. 成员函数void setStrength(int),设置strength 3. 从类Tool 继承产生3个子类Rock, Paper, Scissors,他们各有一个构造函数,带有int参数strength, 以及char型参数type 'r' ( Rock), 'p' ( Paper), 's' (Scissors) 4. 3个子类都各自有一个公有函数bool fight(Tool),比较各自的strength,要求成员变量strength在战斗过程中不会发生变化,比较的规则如下: 1) Rock在和 scissors战斗时, strength会临时加倍,但在和 paper战斗时, strength会临时减半; 2) paper在和 rock战斗时, strength会临时加倍, 但在和scissors战斗时, strength会临时减半; 3) scissors在和 paper 战斗时, strength会临时加倍, 但在和Rock战斗时, strength会临时减半;

资源截图

代码片段和文件信息

#include 
#include 
using namespace std;
class Tool
{
public :
int strength;//武力值 
char type;//对象类型代表 
void setStrentg(int strength)
{
this->strength = strength;
}
}; 

class Rock :public Tool//基于 Tool类的子类Rock 
{
public:
Rock(int temp)
{
type = ‘r‘;
strength = temp;
}
bool fight(Tool a)
{
int temp = this->strength;
if (type == ‘s‘)
{
temp *= 2;
}//遇到剪子,武力值翻倍 
if (type == ‘p‘)
{
temp /= 2;
}//遇到布,武力值减半 
if (temp >a.strength)
return true;
return false;
}
};
//布和剪子类同理可得 
class Paper :public Tool
{
public :
Paper(int temp)
{
type = ‘p‘;
strength = temp;
}
bool fight(Tool a)
{
int temp = this->strength;

评论

共有 条评论

相关资源