您的位置:首页 > 其它

补充程序之游戏系列— 1游戏中的角色类 (2)

2016-06-07 15:37 204 查看

*Copyright(c) 2016.烟台大学计算机与控制工程学院

*ALL rights  reserved.

  *文件名称:main.cpp

   *作者:孙亚茹

*完成日期:2016年6月7日

*问题描述:在(1)的基础上,设计构造函数,及析构函数。

*//

#include <iostream>

using namespace std;

class Role
{
public:
Role(string nam,int b):name(nam),blood(b) {};
~Role();
void show();
void attack();
void eat(int n);
void beAttack();
bool isLife();
private:
string name;
int blood;
bool life;
};
bool Role::isLife()
{
if(blood>0)
return true;
else
return false;
}
Role::~Role()
{
cout<<name<<"退出江湖..."<<endl;
}
void Role::attack()
{
if(isLife())
{
blood++;
}
}
void Role::eat(int n)
{
if(isLife())
{
blood+=n;
}
}
void Role::beAttack()
{
if(isLife())
{
blood--;
}
}
void Role::show()
{
if(isLife())
cout<<name<<"还有"<<blood<<"滴血"<<endl;
else
cout<<name<<"已经死了"<<endl;
}
int main()
{
Role mary("Mary",4);
Role jack("Jack",1);
mary.show();
jack.show();
int n;
while(1)
{
cout<<" 1 maryAttack  2 maryBeAttack  3 maryEat   4 jackAttack   5 jack,BeAttck   6 jackEat"<<endl;
cout<<"请您选择相应的动作:"<<endl;
cin>>n;
if(n==1)
{
mary.attack();
mary.show();
}

else if(n==2)
{

mary.beAttack();
mary.show();
}
else if(n==3)
{
mary.eat(2);
mary.show();
}
else if(n==4)
{
jack.attack();
jack.show();
}
else if(n==5)
{

jack.beAttack();
jack.show();
}
else if(n==6)
{
jack.eat(2);
jack.show();
}
else
break;
}
return 0;
}




总结:

        温故而知新,析构函数的析构符号要写在两个冒号后面。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: