第10,11周 项目三(2)

来源:互联网 发布:台州网络答题知识竞赛 编辑:程序博客网 时间:2024/04/30 18:01
/**Copyright (c)2016,烟台大学计算机与控制工程学院*All rights reserved.*文件名称:main.cpp*作    者:肖雪*完成日期:2016年5月19日*版 本 号:v1.0*问题描述: 为Polic类和Cook类增加了对象成员,请扩充代码,完成(1)各项要求*/#include<iostream>#include<string>using namespace std;class Person{public:    Person(int,string);    void action();    string getName()    {        return name;    }private:    int age;    string name;};Person::Person(int a, string n):age(a), name(n) {}void Person::action(){    cout<<name<<" does bad things."<<endl;}class Police:public Person{public:    Police(int a,string n,int l,int la, string ln);    void arrest(Person);    void show();private:    int level;    Person leader;};Police::Police(int a,string n,int l,int la, string ln):Person(a,n),level(l),leader(la,ln){}void Police::arrest(Person p){    cout<<"Police "<<getName()<<" arrest "<<p.getName()<<endl;}void Police::show(){    cout<<leader.getName()<<" is "<<getName()<<"'s leader."<<endl;}class Cook:public Person{public:    Cook(int a,string n,double s,int pa, string pn, int pl, int pla, string pln);    void getCake(int);    void show();private:    double salary;    Police protecter;};Cook::Cook(int a,string n,double s,int pa, string pn, int pl, int pla, string pln):Person(a,n),salary(s),protecter(pa,pn,pl,pla,pln){}void Cook::getCake(int n){    cout<<"Cook "<<getName()<<" gave police "<<n<<" cakes."<<endl;}void Cook::show(){    cout<<"Cook "<<getName()<<" is protected by Police "<<protecter.getName()<<endl;}int main(){    Person Mili(22,"Mili");    Police Luhan(26,"Luhan",10,34,"Luguo");    Cook Xixi(20,"Xixi",4800,26,"Luhan",10,34,"Luguo");    Mili.action();    Luhan.arrest(Mili);    Luhan.show();    Xixi.show();    Xixi.getCake(10);    return 0;}

0 0
原创粉丝点击