第十/十一周项目三(2)-警察和厨师

原创 2016年05月31日 14:29:18

问题及代码:

/*
*烟台大学计算机学院
*文件名称:xiangmu3(2).cpp
*作    者:闫安
*完成日期:2016年5月22日
*版 本 号:codeblocks 16.01
*
*问题描述:为Polic类和Cook类增加了对象成员,请扩充代码,完成上述各项要求
*程序输入:无
*程序输出:各个对象的属性
*/
#include<iostream>
#include<string>
using namespace std;
class Person           //人类
{
public:
    Person(int a,string nam):age(a),name(nam){};       //构造函数
    void action();
    string getName()
    {
        return name;
    }
private:
    int age;
    string name;
};
void Person::action()
{
    cout<<name<<" do some action"<<endl;
}
class Police:public Person      //警察类,一人类为基类
{
public:
    Police(int a,string nam,int le,Person p):Person(a,nam),level(le),leader(p){};    //构造函数
    void arrest(Person p);
    void show();
private:
    int level;     //级别
    Person leader;    //领导
};
void Police::arrest(Person p)
{
    cout<<"Police "<<getName()<<" arrest " <<p.getName()<<endl;
}
void Police::show()
{
    cout<<"Police "<<getName()<<", leader is " <<leader.getName()<<endl;
}
class Cook:public Person         //厨师类,以人类为基类
{
public:
    Cook(int a,string nam,double s,Police p):Person(a,nam),salary(s),protector(p){};     // 构造函数
    void getCake(int n);
    void show();
private:
    double salary;      //薪水
    Police protector;     //保安
};
void Cook::getCake(int n)
{
    cout<<"Cook "<<getName()<<" gave me " <<n<<" cakes."<<endl;
}
void Cook::show()
{
    cout<<"Cook "<<getName()<<" is protected by Police "<<protector.getName()<<endl;
}
int main()
{
    Person jerry(43,"Jerry");
    Police jack(30,"Jack",2,jerry);
    Cook john(24,"John",5000,jack);
    jack.show();
    john.show();
    return 0;
}
运行结果:


知识点总结:

        运用派生类

学习心得:

       要注意构造函数的编写,开始错了好几次 

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

11周3-2项目-警察和厨师为Polic类和Cook类增加了对象成员,请扩充代码

问题及代码: /* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:main.cpp *作 者:李磊涛 *完成时间:2016...

第十周第十一周上机实践项目-项目3-2-警察和厨师

/*copyright(c)2016.烟台大学计算机学院 * All rights reserved, * 文件名称:text.Cpp * 作者:刘涛 * 完成日期:2016年5月7日 * ...

第十一周【项目3- 警察和厨师2】

/* *Copyright(c) 2016, 烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作 者:张珩瑞 *完成日期:20...

第10.11周项目3-警察和厨师(2)

代码: /* *Copyright (c) 2016, 烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp; *作 者:岳成艳2016年5月1...

第10.11周项目三--警察和厨师(1)

代码: /* *Copyright (c) 2016, 烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp; *作 者:岳成艳2016年5月...

第十一周项目3.2 警察和厨师 修改

/* *Copyright(c) 2016, 烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作 者:李德坤 *完成日期:20...

项目-警察和厨师

/* Copyright (c) 2016* All rights reserved 烟台大学计算机与控制工程学院 * 文件名称:3.cpp * 作者:刘丽 * 完成日期:2016年 5 月 1...

第10、11周项目(3)-警察与厨师

问题描述及代码: /* *copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:hellow.cpp *作者:田甜 *完成日期:2016年...

第十周项目3 警察和厨师继承组合类

/* *Copyright(c) 2016,烟台大学计算机学院 *作 者:刘金石 *完成日期:2016年5月3日 *问题描述:警察和厨师 *...

第十一周【项目3 - 警察和厨师】

/* *Copyright(c) 2016, 烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp *作 者:张珩瑞 *完成...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)