员工类
要求定义一个基类Person,它有3个protected的数据成员:姓名name(char *类型)、性别 sex(char类型)、年龄age(int类型);一个构造函数用于对数据成员初始化;有一个成员函数show()用于输出数据成员的信息。
创建Person类的公有派生类Employee,增加两个数据成员 基本工资 basicSalary(int类型) 请假天数leaveDays(int型);为它定义初始化成员信息的构造函数,和显示数据成员信息的成员函数show()。
输入共5个数据,分别代表姓名、性别、年龄、基本工资、请假天数。
输出如示例数据所示,共5行,分别代表姓名、年龄、性别、基本工资、请假天数
输入
zhangsan m 30 4000 2
输出
name:zhangsan
age:30
sex:m
basicSalary:4000
leavedays:2
//员工类
#include <iostream>
#include<string.h>
using namespace std;
class Person
{
protected:
char *name;
char sex;
int age;
public:
void get();
void show();
Person();
};
Person::Person()
{
name=new char[100];
sex='m';
age=0;
}
void Person::get()
{
cin>>name;
cin>>sex;
cin>>age;
}
void Person::show()
{
cout<<"name:"<<name<<endl;
cout<<"age:"<<age<<endl;
cout<<"sex:"<<sex<<endl;
delete name;
}
class Employee: public Person
{
private:
int basicSalary;
int leaveDays;
public:
void get();
void show();
Employee()
{
basicSalary=0;
leaveDays=0;
}
};
void Employee::get()
{
cin>>basicSalary;
cin>>leaveDays;
}
void Employee::show()
{
cout<<"basicSalary:"<<basicSalary<<endl;
cout<<"leavedays:"<<leaveDays<<endl;
}
int main(void)
{
Employee a;
a.Person::get();
a.get();
a.Person::show();
a.show();
return 0;
}