【题目】
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;
}
【实验结果截图】