您的位置:首页 > 其它

第七周 项目三

2016-04-19 19:00 369 查看
/*
*Copyright(c)2014,烟台大学计算机与控制工程学院
*Allrights reserved.
*文件名称:test.cpp
*作者:肖雪
*完成日期:2016年4月19日
*版本号:v1.0
*
*问题描述:将上一周“项目2-带武器的游戏角色”用“一个项目多个文件”的方式实现,其中两个类的声明放在一个.h文件中,
*         每个类的成员函数分别放一个文件,main()函数用一个文件
*
*/

1.game.h:类声明
#ifndef GAME_H_INCLUDED
#define GAME_H_INCLUDED
using namespace std;
class Role
{
public:
void setRole(string M,int x);
void weapon1(int);
void weapon2(int);
bool show();
void attack();
void eat(int);
void beAttack();
private:
string name;
int blood;
bool life;
int shanghai=1;
};

#endif // GAME_H_INCLUDED
 
2.role.cpp:定义角色类的成员函数

#include <iostream>
#include "game.h"
using namespace std;

void Role::setRole(string M,int x)
{
blood=x;
cout<<"名字:"<<M<<"   生命力:"<<blood<<endl;
}
bool Role::show()
{
if(blood>0)
cout<<"生命力:"<<blood<<endl;
else
cout<<"已逝去"<<endl;
return 0;
}
void Role::weapon1(int n)
{
cout<<"绝情剑的伤害为 "<<n<<endl;
shanghai+=n;
}
void  Role::weapon2(int n)
{
cout<<"流风琴的伤害为 "<<n<<endl;
shanghai+=n;
}
void Role::attack()
{

cout<<"您造成了"<<shanghai<<"点伤害"<<endl;
}
void Role::eat(int n)
{
blood+=n;
cout<<"您得到"<<n<<"点生命"<<endl;
}
void Role::beAttack()
{
blood=blood-1;
cout<<"您减少"<<1<<"点生命"<<endl;
}
3.main.cpp:测试函数
#include <iostream>
#include "game.h"
using namespace std;
int main()
{
int x;
Role mary;
mary.setRole("花千骨",6);
mary.show();
cout<<"请选择您的武器:1、绝情剑  2、流风琴"<<endl;
cin>>x;
switch(x)
{
case 1:
mary.weapon1(3);
break;
case 2:
mary.weapon2(2);
break;
}

mary.attack();
mary.eat(2);
mary.beAttack();
mary.attack();
mary.show();
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: