C++实验 实验4 继承与派生类 1
2011-07-31 08:53
225 查看
编写一个学生和教师数据输入和显示程序,学生数据有编号、姓名、班级和成绩,教师数据有编号、姓名、职称和部门。要求将编号、姓名输入和显示设计成一个类person,并作为学生数据操作类student和教师类数据操作类teacher的基类。
#include<iostream> #include<string.h> using namespace std; class Person { public: Person(int n, char *str) { num = n; name = new char[sizeof(str)+1]; strcpy(name, str); } void show_name() { cout << "Name: "<< name << endl; } void show_num() { cout << "Number: " << num << endl; } private: char *name; int num; }; class Student : public Person { public: Student(int n, char *str, int c, float s) : Person(n, str) { Class = c; score = s; } void show() { cout << "\n"; show_name(); show_num(); cout << "Class: " << Class << endl; cout << "Score: " << score << "\n" <<endl; } private: int Class; float score; }; class Teacher : public Person { public: Teacher(int n, char *str, char *pro, char *dep) : Person(n, str) { pro_post = new char[sizeof(pro)+1]; strcpy(pro_post, pro); department = new char[sizeof(dep)+1]; strcpy(department, dep); } void show() { cout << "\n"; show_name(); show_num(); cout << "Professional post: " << pro_post << endl; cout << "Department: " << department << endl; } private: char *pro_post; char *department; }; int main() { Student Stu(9051109, "Hugo", 1, 88); Stu.show(); Teacher Teach(1111, "Ann", "Doctor", "English"); Teach.show(); return 0; }
相关文章推荐
- 《C++第十二周实验报告1-1》----理解基类中成员的访问限定符和派生类的继承方式
- C++实验 实验4 继承与派生类 2
- C++ 实验三 继承和派生类 (附答案)
- C++中虚继承下派生类object布局
- c++学习笔记5,多重继承中派生类的构造函数与析构函数的调用顺序(二)
- C++继承之基类与派生类的转换
- 【C++的探索路12】继承与派生之高级篇--派生类与赋值运算符及多重继承
- C++中赋值运算符能不能被派生类继承
- C++实验题---填空(类与继承B)
- C++继承和派生类
- 《C++第十周实验报告1-1》---PointLine继承练习
- [C++]继承和派生类
- C++中的 public和private以及protected派生类继承问题和访问权限问题
- C++之public、private、protected(一)派生类继承与访问权限详解
- 学习笔记之深入浅出MFC 第8章 C++重要性质----基类与派生类:谈继承(Inheritance)
- C++中 public和private派生类继承问题和访问权限问题
- C++第四次实验——派生和继承1
- C++上机实验二:派生类的设计与使用
- c++继承详解之一——继承的三种方式、派生类的对象模型
- 《C++第十二周实验报告2-1》--分别定义Teacher(教师)类和Cadre(干部采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)