- *问题描述:设计构造函数,使角色对象在创建时被初始化。
- */
- #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;
- }
第五周项目2(2)
最新推荐文章于 2022-10-20 19:04:39 发布