【题目】
1.定义person类,包括数据私有成员:姓名,性别;共用成员函数:带参数构造函数,display函数输出本类对象的所有数据成员值。
2.定义student类,保护继承person类;增加保护数据成员:学号;共用成员函数:带参数构造函数,display函数输出本类对象的所有数据成员值。
3.定义graduate类,共用继承student类,增加数据成员:分数;共用成员函数:带参数构造函数,display函数输出本类对象的所有数据成员值。
4.main函数中分别定义三个类的对象,并用不同的对象调用display函数输出该对象的值。
5.可根据需要增加其他成员。
【代码】
#include <iostream>
#include <string>
class person {
private:
std::string name;
std::string gender;
public:
person(std::string n, std::string g) : name(n), gender(g) {}
void display() {
std::cout << "姓名:" << name << ",性别:" << gender << std::endl;
}
};
class student : protected person {
protected:
std::string id;
public:
student(std::string n, std::string g, std::string i) : person(n, g), id(i) {}
void display() {
person::display();
std::cout << "学号:" << id << std::endl;
}
};
class graduate : public student {
private:
int score;
public:
graduate(std::string n, std::string g, std::string i, int s) : student(n, g, i), score(s) {}
void display() {
student::display();
std::cout << "分数:" << score << std::endl;
}
};
int main() {
person p("张三", "男");
p.display();
student s("李四", "女", "001");
s.display();
graduate g("王五", "男", "002", 90);
g.display();
return 0;
}
【实验结果截图】