【2713】 多级派生类的构造函数

来源:互联网 发布:工业数据库 编辑:程序博客网 时间:2024/04/27 23:16

5-3 多级派生类的构造函数

Time Limit: 1000MS Memory limit: 65536K

题目描述

要求定义一个基类3name(char *类型sex(char类型age(int类型创建Employee,增加两个数据成员 基本工资 int类型) 请假天数int型);为它定义初始化成员信息的构造函数,和显示数据成员信息的成员函数创建Manager;增加一个成员 业绩 );为它定义初始化成员信息的构造函数,和显示数据成员信息的成员函数如示例数据所示,共<font face="\"Times" new="" roman,="" serif\"="" style="padding: 0px; margin: 0px;">5行,分别代表姓名、年龄、性别、基本工资、请假天数、业绩

示例输入

Jerry m 32 4200 1 100

示例输出

name:Jerryage:32sex:mbasicSalary:4200leavedays:1performance:100

提示

 

来源

 黄晶晶

示例程序

#include<iostream>#include<cstring>using namespace std;class person{    protected:char name[100];char sex;    int age;    public:        person(){}        person(char *nam,char s,int a)        {            strcpy(name,nam);            sex=s;            age=a;        }        void get1()        {            cin>>name>>sex>>age;        }        void show1()        {            cout<<"name:"<<name<<endl;            cout<<"age:"<<age<<endl;            cout<<"sex:"<<sex<<endl;        }};class emplayee:public person{    protected:        int basicsalary,leavedays;    public:        emplayee(){}        emplayee(char *nam,char s,int a,int b,int l):person(nam,s,a)        {          basicsalary=b;leavedays=l;        }        void get2()        {            get1();            cin>>basicsalary>>leavedays;        }        void show2()        {            show1();            cout<<"basicSalary:"<<basicsalary<<endl;            cout<<"leavedays:"<<leavedays<<endl;        }};class manager:public emplayee{    protected:float performance;    public:manager(){}    manager(char *nam,char s,int a,int b,int l,float p):emplayee(nam,s,a,b,l)    {        performance=p;    }    void get3()    {        get2();        cin>>performance;    }    void show3()    {        show2();        cout<<"performance:"<<performance<<endl;    }};int main(){    manager e;    e.get3();    e.show3();    return 0;}



0 0
原创粉丝点击