第五周项目二-游戏中的角色类

/*2015.烟台大学计算机与控制工程学院 

*ALL rightreserved. 

*文件名称:test.cpp 

*作者:陈文浩 

*完成日期:2016年4月6日。 

*/  

/*问题及代码: 

(2)设计构造函数,使角色对象在创建时被初始化;设计析构函数,当角色对象被撤消时,提示一句“XXX(名称)退出江湖…”。可以用下面的代码进行测试,运行结果参考右图:

<code class="hljs scss has-numbering">int <span class="hljs-function">main( )</span>
{
    Role <span class="hljs-function">mary(<span class="hljs-string">"Mary"</span>, <span class="hljs-number">4</span>)</span>;
    Role <span class="hljs-function">jack(<span class="hljs-string">"Jack"</span>, <span class="hljs-number">0</span>)</span>;
    mary<span class="hljs-class">.show</span>();
    jack<span class="hljs-class">.show</span>();
    return 0;
}</code>

#include <iostream>

using namespace std

;class Role{public

   Role(string nam, int b); //构造函数   

 ~Role(); //析构函数   

void eat(int d); //吃东西,涨d血  

  void attack(); //攻击别人,涨1血  

  void beAttack(); //被攻击,失1血,血为0死掉

    bool isAlived(); //是否活着    void show();

//显示

private:    string name;

    int blood;    bool life;};Role::Role(string nam, int b){    name=nam;    blood=b;    if(blood>0)        life=true;    else        life=false;}Role::~Role(){    cout<<name<<"退出江湖..."<<endl;}void Role::eat(int d) //吃东西,涨d血{    if(isAlived())        blood+=d;}void Role::attack() //攻击别人,涨1血{    if(isAlived())        blood++;}void Role::beAttack() //被攻击,失1血,血为0死掉{    if(isAlived())        blood--;    if(blood==0)        life=false;}bool Role::isAlived() //是否活着{    return life;}void Role::show() //显示{    cout<<name<<" has "<<blood<<" blood, it is ";    if(isAlived())        cout<<"alived.";    else        cout<<"dead.";    cout<<endl;}int main( ){    Role mary("Mary", 4);    Role jack("Jack", 0);    mary.show();    jack.show();    return 0;}

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值