第十一周项目训练10.1警察和厨子
2016-06-02 08:38
302 查看
/*
*Copyright(c) 2016.烟台大学计算机与控制工程学院
*ALL rights reserved.
*文件名称:main.cpp
*作者:王玙璠
*完成日期:2016年6月2日
问题描述:根据下面的图,定义各个类:
要求:请为各个类增加构造函数,可以增加需要的其他函数,自行编制main函数,完成初步的测试
程序:
运行结果:
*Copyright(c) 2016.烟台大学计算机与控制工程学院
*ALL rights reserved.
*文件名称:main.cpp
*作者:王玙璠
*完成日期:2016年6月2日
问题描述:根据下面的图,定义各个类:
要求:请为各个类增加构造函数,可以增加需要的其他函数,自行编制main函数,完成初步的测试
程序:
#include <iostream> 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<<endl; } class Police:public Person { public: Police(int a,string nam,int l); void arrest(Person); private: int level; //级别 }; Police::Police(int a,string nam,int l):Person(a,nam),level(l){} void Police::arrest(Person p) { cout<<" Police "<<getName()<<" arrest "<<p.getName()<<endl; } class Cook:public Person { public: Cook(int a,string nam,double s); void getCake(int ); private: double salary; //薪水 }; Cook::Cook(int a,string nam,double s):Person(a,nam),salary(s){} void Cook::getCake(int c) { cout<<" Cook "<<getName()<<" gave me " <<c<<" cakes "<<endl; } int main() { Person tom(120,"Tom"); Police jack(30,"Jack",2); Cook john(24,"John",5000); jack.arrest(tom); john.getCake(4); return 0; }
运行结果: