news 2026/4/15 12:36:38

大学有这样几类人员:学生、教师、职员和在职读书的教师。给出这几类人员的类描述。

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
大学有这样几类人员:学生、教师、职员和在职读书的教师。给出这几类人员的类描述。
// 补充必要的头文件(原代码缺失) #include <iostream> #include <string> using namespace std; // 基类:人员基本信息 class Person // 类名首字母大写,符合C++命名规范 { private: int age; // 年纪 string name; // 姓名 string identity; // 身份(原shenfen,英文更易读) public: // 优化点1:string类型默认值改为空字符串"",而非NULL Person(int m_age = 0, string m_name = "", string m_identity = "") : age(m_age), name(m_name), identity(m_identity) { // 可选:增加参数合法性检查,增强健壮性 if (age < 0) age = 0; // 年龄不能为负数 } // 虚函数,为多态提供基础 virtual void show() const { cout << "信息如下:" << endl; cout << "年龄:" << age << endl; cout << "姓名:" << name << endl; cout << "身份:" << identity << endl; } }; // 派生类:学生 class Student : public Person { private: string education; // 学历(原xueli,英文更易读) public: // 优化点1:string默认值改为"" Student(int age = 0, string name = "", string identity = "", string m_education = "") : Person(age, name, identity), education(m_education) {} void show() const override // 补充override关键字,明确重写基类虚函数 { Person::show(); cout << "学历:" << education << endl; } }; // 派生类:老师 class Teacher : public Person { private: string teachingSubject; // 教学科目(原Subject,命名更清晰) public: // 优化点1:string默认值改为"",修正参数名拼写错误(原m_subjcet) Teacher(int age = 0, string name = "", string identity = "", string m_subject = "") : Person(age, name, identity), teachingSubject(m_subject) {} void show() const override { Person::show(); cout << "教学科目:" << teachingSubject << endl; } }; // 派生类:职工 class Employee : public Person { private: string workUnit; // 工作单位(原unit,命名更清晰) public: // 优化点1:string默认值改为"" Employee(int age = 0, string name = "", string identity = "", string m_unit = "") : Person(age, name, identity), workUnit(m_unit) {} void show() const override { Person::show(); cout << "工作单位:" << workUnit << endl; } }; // 派生类:在职读书的老师(原Study_Work,类名更直观) class TeacherWithStudy : public Person { private: string teachingSubject; // 教学科目(命名和Teacher类保持一致) string education; // 学历(命名和Student类保持一致) public: // 优化点1:string默认值改为"" TeacherWithStudy(int age = 0, string name = "", string identity = "", string m_subject = "", string m_education = "") : Person(age, name, identity), teachingSubject(m_subject), education(m_education) {} void show() const override { Person::show(); cout << "教学科目:" << teachingSubject << endl; cout << "学历:" << education << endl; } }; int main() { Person* p1 = nullptr, * p2 = nullptr, * p3 = nullptr, * p4 = nullptr; // 创建各派生类对象 Student st(22, "王五", "学生", "高中生"); p1 = &st; p1->show(); cout << endl; Teacher te(30, "张三", "老师", "数学"); p2 = &te; p2->show(); cout << endl; Employee em(45, "老王", "职工", "保安"); p3 = &em; p3->show(); cout << endl; TeacherWithStudy sw(26, "李四", "在职读书老师", "大学英语", "研究生"); p4 = &sw; p4->show(); return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/13 14:11:26

数字图像处理篇---小波变换

如果说傅里叶变换和DCT是用固定镜头观察世界&#xff0c;那么小波变换就是一部可以自由变焦、还能移动镜头的超强摄像机。核心比喻&#xff1a;用“显微镜”和“地图”分析图像想象你要分析一张城市全景图。傅里叶/DCT的做法&#xff08;固定视角&#xff09;&#xff1a;他们飞…

作者头像 李华
网站建设 2026/4/14 10:31:47

基于LSTM的剩余寿命预测附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。&#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室&#x1f447; 关注我领取海量matlab电子书和…

作者头像 李华
网站建设 2026/4/7 13:40:01

第七十八篇-CentOS-7+安装cmake-3.24.3

系统&#xff1a;CentOS-7 下载 wget https://github.com/Kitware/CMake/releases/download/v3.24.3/cmake-3.24.3-linux-x86_64.sh 赋予执行权限 chmod x cmake-3.24.3-linux-x86_64.sh 创建目录 mkdir -p /no_move/cmake 安装 sudo ./cmake-3.24.3-linux-x86_64.sh --…

作者头像 李华
网站建设 2026/4/10 21:12:17

Maven 依赖管理

Maven 依赖管理 引言 Maven 是一个强大的构建自动化工具,主要用于 Java 项目的构建、测试、文档和报告。依赖管理是 Maven 的核心功能之一,它使得开发者能够轻松地引入外部库和框架,以支持项目开发。本文将详细介绍 Maven 的依赖管理机制,包括依赖的声明、解析、传递依赖…

作者头像 李华
网站建设 2026/4/10 17:26:13

SOAP 简介

SOAP 简介 引言 SOAP(Simple Object Access Protocol)是一种轻量级、简单、可扩展的协议,用于在网络上交换结构化信息。它允许不同平台、不同编程语言的应用程序之间进行通信。本文将详细介绍SOAP的基本概念、工作原理、优势以及应用场景。 SOAP的基本概念 SOAP是一种基…

作者头像 李华