6. 简答题 定义一个基类Person,数据成员包含姓名,性别,年龄。成员包含函数set()用于初始化数据成员、成员函数Print()用于输出信息。从Person类公有派生出Student类,增加整型数据成员number用于保存学号,函数成员set1()用于初始化数据成员、成员函数PrintInfo()用于输出学生信息。要求:在PrintInfo()函数中调用基类的成员函数Print ()。创建学生对象完成初始化信息及输出。
时间: 2023-07-14 07:12:58 浏览: 119
下面是实现上述要求的代码:
```cpp
#include <iostream>
#include <string>
using namespace std;
class Person {
protected:
string name; // 姓名
char sex; // 性别
int age; // 年龄
public:
void set(string n, char s, int a) {
name = n;
sex = s;
age = a;
}
void Print() {
cout << "姓名:" << name << endl;
cout << "性别:" << sex << endl;
cout << "年龄:" << age << endl;
}
};
class Student : public Person {
private:
int number; // 学号
public:
void set1(string n, char s, int a, int num) {
set(n, s, a);
number = num;
}
void PrintInfo() {
Print(); // 调用基类成员函数
cout << "学号:" << number << endl;
}
};
int main() {
Student stu;
stu.set1("张三", 'M', 20, 10001);
stu.PrintInfo();
return 0;
}
```
上述代码中,Person类是基类,Student类是由Person类公有派生出来的子类。Person类中包含了姓名、性别和年龄三个数据成员以及set()和Print()两个成员函数。Student类在此基础上增加了一个整型数据成员number,并增加了set1()和PrintInfo()两个成员函数。其中,set1()函数用于初始化数据成员,PrintInfo()函数用于输出学生信息,在该函数中调用基类的成员函数Print()来输出Person类中的信息。在main函数中,创建一个Student对象stu,调用set1()函数完成初始化,然后调用PrintInfo()函数输出学生信息。
阅读全文