-
要求:定义一个基类 Person ,它有 3 个 protected 的数据成员:姓名name(String 类型 ) 、性别 sex(char 类型 ) 、年龄 age(int 类型 ) ;一个构造函数用于对数据成员初始化;有一个成员函数 show() 用于输出数据成员的信息。创建 Person 类的公有派生类 Employee ,增加两个数据成员基本工资basicSalary ( int 类型)请假天数 leaveDays ( int 型);为它定义初始化成员信息的构造函数,和显示数据成员信息的成员函数 show() 。
程序运行过程:实现进行基类中的初始化及输出,然后再子类重新初始化基类中继承的相关变量。
-
代码如下:
-
#include<iostream> using namespace std; class Person //定义一个Person基类 { public: Person() //定义构造函数,实现数据初始化 { cout << "请输入姓名、性别、年龄" << endl; cin >> name >> sex >> age; } void show() //定义show()成员函数,实现输出 { cout << "姓 名:" << name << endl; cout << "性 别:" << sex << endl; cout << "年 龄:" << age << endl; } protected: //定义三个保护类型变量 string name; char sex; int age; }; class Employee :public Person //定义Employee类为Person类的子类 { public: //定义两个公有变量 int basicSalary; int leaveDays; Employee() //定义一各构造函数、实现初始化 { cout << "请输入基本工资、请假天数" << endl; cin >> basicSalary >> leaveDays; } void show_E() //定义show_E()成员函数,实现输出 { cout << "姓 名:" << name << endl; cout << "性 别:" << sex << endl; cout << "年 龄:" << age << endl; cout << "工 资:" << basicSalary << endl; cout << "请假天数:" << leaveDays << endl; } }; void test01() { Person P; //定义Person类型变量 P.show(); //调用Person类的成员函数 Employee s; //定义Employee类型变量 s.show_E(); //调用Employee类的成员函数 } int main() { test01(); //调用test01()函数 return 0; }