第六周项目2:给游戏角色添加武器
2016-04-06 18:53
141 查看
问题及代码:
运行结果:
知识点总结:
组合类的程序应注意的问题。
学习心得:
组合类应用广泛,应该多加练习。
/* *copyright(c)2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:test.cpp *作者:崔青青 *完成日期:2016年4月6日 *问题描述:在上一周的基础上,对角色设计武器。 *输入: *程序输出: */ #include <iostream> using namespace std; class weapon { public: weapon(string nam,int f); int showweapon(); void show(); private: int force; string wname; }; weapon::weapon(string nam,int f) { wname=nam; force=f; } int weapon::showweapon() { return force; } void weapon::show() { cout<<"使用武器:"<<wname<<" "<<"威力:"<<force<<endl; } class role { public: role(string ch,int x,string nam,int f); void show(); int attack(role &r); int eat(int n); int beattack(); bool islived(); ~role() { cout<<name<<"退出江湖......"<<endl; } private: string name; int blood; bool life; weapon wea; }; role::role(string ch,int x,string nam,int f): name(ch), blood(x), wea(nam,f) { ; } bool role::islived() { if(blood>0) return 1; else return 0; } void role::show() { cout<<name<<" "<<"your blood is:"<<blood<<endl; wea.show(); } int role::attack(role &r) { if(islived()) { blood=blood+wea.showweapon(); r.blood=r.blood-wea.showweapon(); } return blood; } int role::eat(int n) { if(islived()) blood=blood+n; return blood; } int role::beattack() { if(islived()) blood=blood-1; return blood; } int main() { role mary("Mary",40,"顺风耳",10); role jack("jack",40,"千里眼",20); mary.show(); jack.show(); cout<<"第一回合:"<<endl; jack.attack(mary); mary.show(); jack.show(); cout<<"第二回合:"<<endl; mary.attack(jack); mary.show(); jack.show(); cout<<"---end---"<<endl; return 0; }
运行结果:
知识点总结:
组合类的程序应注意的问题。
学习心得:
组合类应用广泛,应该多加练习。
相关文章推荐
- 树与图(图 未完成)
- [JEEWX问题修复] JeeWX开源版2.3几处代码修改。
- 经典算法系列--kmp
- 按钮的四种监听方法
- Ubuntu终端(Terminal)常用快捷键
- jboss-as-7.1.1.Final:(四)Eclipse集成下的自动发布和JSP的热加载
- AngularJS之基础-4 DI(控制器参数、监听)、指令(模板包含、节点控制)、事件绑定
- 第6周-项目4-静态成员应用
- Android源码地址
- 用js生成rgb颜色
- springMVC中bean容器:bean.xml的配置
- LeetCode338. Counting Bits还有更好的解法吗
- 解决oom(内存溢出)
- recyclerView 的坑
- C语言 格式问题
- C# Func<>托付
- SELECT (Transact-SQL)
- Router::Auth()
- popen管道
- Billboard