定义一个人员类Person,它有姓名、性别、身份证号、出生日期等信息,同时拥有能够显示和设置这些信息的函数;从Person类派生出学生类Student和教师类Teacher,学生类有学号、年级、班级等信息,教师类有职称等信息;再从Student和Teacher类派生出在职学习的教师类StuTeacher。以上类中的信息采用动态内存分配存储的方法,要在构造函数里分配存储空间,要有析构函数释放空间,要有拷贝构造函数实现深拷贝。在类的继承关系中要合理利用虚拟继承避免二义性问题,要在派生类中重写基类中继承来的成员函数。
定义一个双向链表类,链表的节点拥有一个指向Person类型对象的指针,利用该链表存储一系列的Student、Teacher和StuTeacher对象,并能在链表中查找、修改、添加、删除对象以及遍历显示这些对象。类中的其它内容自行设计,编写测试代码使用这些类。
定义一个双向链表类,链表的节点拥有一个指向Person类型对象的指针,利用该链表存储一系列的Student、Teacher和StuTeacher对象,并能在链表中查找、修改、添加、删除对象以及遍历显示这些对象。类中的其它内容自行设计,编写测试代码使用这些类。