5-2 派生类的构造函数

来源:互联网 发布:java c base64 编辑:程序博客网 时间:2024/06/10 00:10

题目描述

通过本题目的练习可以掌握派生类构造函数的定义和使用方法。

要求定义一个基类Person,它有3protected的数据成员:姓名name(char *类型)、性别 sex(char类型)、年龄age(int类型);一个构造函数用于对数据成员初始化;有一个成员函数show()用于输出数据成员的信息。

创建Person类的公有派生类Employee,增加两个数据成员 基本工资basicSalaryint类型) 请假天数leaveDaysint型);为它定义初始化成员信息的构造函数,和显示数据成员信息的成员函数show()

输入

5个数据,分别代表姓名、性别、年龄、基本工资、请假天数。

输出

如示例数据所示,共5行,分别代表姓名、年龄、性别、基本工资、请假天数

示例输入

zhangsan m 30 4000 2

示例输出

name:zhangsanage:30sex:mbasicSalary:4000leavedays:2
#include<iostream>#include<cstring>using namespace std;class person{protected :    char name[50];    char sex;    int age;public:person(){}    person(char *n,char s,int a)    {        strcpy(name,n);        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 employee:public person{protected:    int basicSalary;    int leaveDays;public:employee(){}    employee(int bas,int lea)    {        basicSalary=bas;        leaveDays=lea;    }    void get2()    {        get1();        cin >>basicSalary>>leaveDays;    }    void show2()    {        show1();        cout <<"basicSalary:"<<basicSalary<<endl;        cout <<"leavedays:"<<leaveDays<<endl;    }};int main(){    employee P;    P.get2();    P.show2();    return 0;}

0 0
原创粉丝点击