2、Person类派生大学生CollegeStu类。 (1)设计一个Person类,其属性包括姓名name和身份证号id,其中name为字符串类型,id为整型,编写成员函数: 构造函数Person、Display函数 ( 显示数据成员信息)和析构函数; (2)由Person类派生出大学生类CollegeStu,其属性有专业maior ( 字符串类型),C++程设计课程成绩score ( double型 ),编写构造函数( 实现数据初始化 )、输出函数Display ( 包括name,id , major , score )。
时间: 2024-02-29 21:51:29 浏览: 164
好的,我明白了。下面是代码实现:
```c++
#include <iostream>
#include <string>
using namespace std;
class Person {
public:
Person(string name, int id) {
this->name = name;
this->id = id;
}
void Display() {
cout << "姓名:" << name << endl;
cout << "身份证号:" << id << endl;
}
~Person() {
cout << "Person对象已销毁!" << endl;
}
protected:
string name;
int id;
};
class CollegeStu : public Person {
public:
CollegeStu(string name, int id, string major, double score) : Person(name, id) {
this->major = major;
this->score = score;
}
void Display() {
Person::Display();
cout << "专业:" << major << endl;
cout << "C++程设计课程成绩:" << score << endl;
}
private:
string major;
double score;
};
int main() {
CollegeStu stu("张三", 123456, "计算机科学与技术", 89.5);
stu.Display();
return 0;
}
```
在上面的代码中,首先定义了一个 `Person` 类,其中包含了姓名和身份证号两个数据成员。然后定义了一个 `CollegeStu` 类,它继承自 `Person` 类,增加了专业和成绩两个数据成员。在 `CollegeStu` 类的构造函数中,先调用基类 `Person` 的构造函数,再对新增的数据成员进行初始化。在 `CollegeStu` 类的 `Display()` 函数中,先调用基类 `Person` 的 `Display()` 函数,再输出新增的数据成员。最后在主函数中,创建一个 `CollegeStu` 对象,并调用它的 `Display()` 函数,输出所有数据成员的信息。
阅读全文