第五周项目2-游戏中的角色类(2)

来源:互联网 发布:医药魔方销售数据库 编辑:程序博客网 时间:2024/06/02 13:44

问题及代码:

/* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:zwj.cpp *作    者:张伟晶 *完成日期:2016年3月26日 *版 本 号:v1.0 * *问题描述:设计一个游戏中角色的类,定义其中的变量,使角色可以改变状态,析构函数,退出江湖 *输入描述:根据提示,输入选项 *程序输出:角色的状态 */#include<iostream>using namespace std;class role{public:    void eat();    void attack();    void beattack();    bool isalived();    void setrole(string name,int b);    void show();    ~role();private:    string name;    int blood;    bool life;};bool role::isalived(){    if(blood>0)        return true;    else        return false;}void role::eat(){     if(isalived())        blood+=1;}void role::attack( ){    if(isalived())        blood+=1;}void role::beattack(){    if(isalived())        blood-=1;}void role::setrole(string nam ,int b){    name=nam;    blood=4;}void role::show(){    if(blood>0)        cout<< name<< " has "<<blood<<" blood,it is alived."<<endl;    else        cout<<  name<< " was over."<<endl;}role ::~role(){        cout<<name<<"退出江湖";        cout<<"\n";};int main(){        role mary;        mary.setrole("mary",4);        role jack;        jack.setrole("jack",4);        mary.show();        jack.show();        int n; while(n>0)    {        int n;        cout<<"   mary:   attack:1     beattack:2     eat:3     "<<endl;        cout<<"   jack:    attack:4     beattack:5     eat:6     "<<endl;        cout<<"please choose your activity:";        cin>>n;        if(n==1)            mary.attack();        else if(n==2)            mary.beattack();        else if(n==3)            mary.eat();        else if(n==4)            jack.attack();        else if(n==5)            jack.beattack();        else if(n==6)            jack.eat();        else            break;        cout<<"\n";        mary.show();        cout<<"\n";        jack.show();        cout<<"\n\n\n\n";    }    return 0;}

运行结果:

知识点总结:

类,对象,析构函数

学习心得:

持续努力,保持激情。

0 0