函数题:继承和多态(人员、学生)
请设计人员和学生类,并通过测试程序,具体要求如下:
1. 人员类(Person)是基类,成员包含:
- 保护成员变量,姓名(name,string类型)
- 保护成员变量,年龄(age,int类型)
- 公有构造函数
- 公有函数display
2. 学生类(Student)从人员类公有继承,成员包含:
- 私有成员变量,学号(id,string类型)
- 公有构造函数
- 公有函数display
### 测试程序:
c++
#include<iostream>
#include<string>
using namespace std;
/* 请在这里填写答案 */
int main(){
Person p("张三",20);
p.display();
Student s("李四",18,"0001");
s.display();
p=(Person)s;
p.display();
Person *ps=new Student ("王五",20,"0002");
ps->display();
delete ps;
return 0;
}
### 测试程序的输入:
in
### 测试程序的输出:
out
人员姓名:张三,年龄:20
学生姓名:李四,年龄:18,学号:0001
人员姓名:李四,年龄:18
学生姓名:王五,年龄:20,学号:0002
### 提示
输出的逗号和冒号均为英文格式
逗号 ,
冒号 :
answer:若无答案欢迎评论
1. 人员类(Person)是基类,成员包含:
- 保护成员变量,姓名(name,string类型)
- 保护成员变量,年龄(age,int类型)
- 公有构造函数
- 公有函数display
2. 学生类(Student)从人员类公有继承,成员包含:
- 私有成员变量,学号(id,string类型)
- 公有构造函数
- 公有函数display
### 测试程序:
c++
#include<iostream>
#include<string>
using namespace std;
/* 请在这里填写答案 */
int main(){
Person p("张三",20);
p.display();
Student s("李四",18,"0001");
s.display();
p=(Person)s;
p.display();
Person *ps=new Student ("王五",20,"0002");
ps->display();
delete ps;
return 0;
}
### 测试程序的输入:
in
### 测试程序的输出:
out
人员姓名:张三,年龄:20
学生姓名:李四,年龄:18,学号:0001
人员姓名:李四,年龄:18
学生姓名:王五,年龄:20,学号:0002
### 提示
输出的逗号和冒号均为英文格式
逗号 ,
冒号 :
answer:若无答案欢迎评论