第五周项目(3)-设计游戏角色(2)-析构函数
来源:互联网 发布:mac os10.13锐捷 编辑:程序博客网 时间:2024/06/05 23:21
/*
*copyright (c) 2016,烟台大学计算机学院
*All rights reserved.
*文件名称:hellow.cpp
*作者:田甜
*完成日期:2016年3月31日
*版本号:v1.0
*
*问题描述:设计一个游戏角色类
*输入描述:输入角色姓名,生命值
*程序输出:角色当前状态,并在角色使用结束后输出退出江湖
*/
问题及代码:
#include <iostream>using namespace std;class Role{public: Role(string nam,int blo); ~Role(); void shoe_role(); bool is_alived(); void attack(); void be_attacked(); void eat(int d);private: string name; int blood; bool life;};Role::Role(string nam,int blo)//构造函数{ name=nam; blood=blo; if(blood>0) life=true; else life=false;}Role::~Role()//析构函数{ cout<<name<<"退出江湖。。。"<<endl;}void Role::shoe_role()//显示角色状态{ cout<<name<<" has "<<blood<<" blood, it is "; if(is_alived()) cout<<"alived."<<endl; else cout<<"died."<<endl;}void Role::eat(int d)//吃东西涨血,涨d个血{ if(is_alived()) blood+=d;}void Role::attack()//攻击其他玩家,涨一个血{ if(is_alived()) blood++;}void Role::be_attacked()//被攻击,失一个血{ if(is_alived()) blood--;}bool Role::is_alived()//判断角色是否死亡{ if(blood>0) life=true; else life=false; return life;}int main(){ Role mary("mary",4); Role jack("jack",2); mary.attack(); jack.be_attacked(); mary.shoe_role(); jack.shoe_role(); mary.attack(); jack.be_attacked(); mary.eat(2); mary.shoe_role(); jack.shoe_role(); return 0;}
运行结果:
心得:构造函数的名字与类名相同,且没有类型。析构函数在主函数中不需要语句调用就可自动执行
0 0
- 第五周项目(3)-设计游戏角色(2)-析构函数
- 第五周项目(3)-设计游戏角色(1)
- 第五周项目2-设计游戏角色类(2)
- 第五周项目2 游戏中角色类的设计(2)
- 第五周项目2 游戏中角色类的设计(1)
- 第五周项目2-游戏中的角色类(2)
- 第五周项目2--游戏中的角色类(2)
- 第五周项目2-游戏中的角色类(2)
- 第五周 项目2 游戏中的角色类(2)
- 第五周项目2-游戏中的角色类(2)
- 第五周项目2-游戏中的角色类(1)
- 第五周项目二 游戏中的角色类(2)
- 第五周项目二-游戏中的角色类(2)
- 第五周 项目二 游戏中的角色类 (2)
- 第五周项目2-游戏中的角色类(1)
- 第五周 项目2-游戏中的角色类(1)
- 第五周项目二(2)-游戏中的角色类
- 第五周项目2-游戏中的角色类(1)
- 【千里码】访客统计
- C++ advance
- git版本管理
- LCD电子书项目(四)
- Android焦点分发基本流程
- 第五周项目(3)-设计游戏角色(2)-析构函数
- 如何获得即时编译器(JIT)的汇编代码(linux环境下)
- 封闭类、友元、this指针、常量对象
- 萤石Android SDK 集成到AndroidStudio的时候报错,Tag <activity> attribute name has invalid character ' '.
- Python语言下的机器学习库Python Tools for Machine Learning
- hihocoder-#1094 : Lost in the City
- FPGA学习杂记
- java集合:HashMap和Hashtable的区别
- Linux系统tcpdump抓包保存cap文件