项目3"/>
第十一周【项目3
/**Copyright(c) 2016, 烟台大学计算机与控制工程学院*All rights reserved.*文件名称:main.cpp*作 者:张珩瑞*完成日期:2016年5月16日*版本号:v1.0**问题描述:各个成员函数,只要输出相关的信息即可,暂不深究其业务功能请为各个类增加构造函数在实现中,可以增加需要的其他函数自行编制main函数,完成初步的测试为Polic类和Cook类增加了对象成员,请扩充代码*输入描述:无*输出描述:按要求输出*/
#include<iostream>
using namespace std;
class Person
{
public:Person(int pa,string pn);//Person构造函数void action();string getName();//得到名字void personshow();
private:int age;string name;
};
Person::Person(int pa,string pn)
{age=pa;name=pn;
}
void Person::action()//
{cout<<getName()<<"已经到达现场。"<<endl;
}
string Person::getName()
{return name;
}
void Person::personshow()
{cout<<"姓名:"<<name<<endl<<"年龄:"<<age<<endl;
}
class Polic:public Person
{
public:void arrest(Person);Polic(int policage,string policname,int policlevel,int leaderage,string leadername);//Polic构造函数void policshow();
private:int level;Person leader;
};
Polic::Polic(int policage,string policname,int policlevel,int leaderage,string leadername):Person(policage,policname),leader(leaderage,leadername)
{level=policlevel;
}
void Polic::arrest(Person p)
{cout<<getName()<<"已经把"<<p.getName()<<"逮捕。"<<endl;
}
void Polic::policshow()
{string m;personshow();m=getName();cout<<m<<"的领导是:"<<endl;leader.personshow();cout<<endl;
}
class Cook:public Person
{
public:string getCake(int );Cook(int ca,string cn,double cs,int pta,string ptn,int ptl,int pla,string pln);void cookshow();
private:double salary;Polic protector;
};
Cook::Cook(int ca,string cn,double cs,int pta,string ptn,int ptl,int pla,string pln ):Person(ca,cn),protector(pta,ptn,ptl,pla,pln)
{salary=cs;
}
string Cook::getCake(int a)
{string g;cout<<getName()<<"给"<<protector.getName()<<a<<"个蛋糕。"<<endl;return g;
}
void Cook::cookshow()
{string m;personshow();m=getName();cout<<m<<"的薪水是:"<<salary<<endl;cout<<m<<"所在区域的警察是:"<<endl;protector.policshow();
}
int main()
{Polic s(25,"警察小李",5,50,"警察老王");s.policshow();Cook c(30,"厨师小刘",5000,25,"警察小李",5,50,"警察老王");c.cookshow();Person x(30,"小偷赵");s.action();s.arrest(x);c.getCake(100);return 0;
}
更多推荐
第十一周【项目3
发布评论