C++实验报告九

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

VC++程序设计实验报告

实验九题目:继承与派生专业

学生姓名

班级学号

指导教师

指导单位

日期

一、实验目的

1、理解类的继承概念,能够定义与使用类的继承关系

2、掌握派生类的声明与定义方法

3、掌握公有、私有与保护派生的访问特性

二、实验内容

1.设计一个大学的类系统,学校有学生、老师、职员,每种人员都有自己的特性,她们之间又有相同的地方。利用继承机制定义这个系统中的各个类及类上的必须操作。

2.假定车可分为货车、客车又可分为轿车、面包车与公共汽车。请设计相应的类层次结构并加以实现、

三、实验结果及其结果分析

1、(1)源程序:

#include〈iostream、h>

#include

class Person{

protected:

ﻩcharm_strName[10];

ﻩintm_nSex;

ﻩintﻩm_nAge;

public:

ﻩPerson(char*name,int age,char sex){

ﻩstrcpy(m_strName, name);

ﻩﻩm_nSex= (sex==’m'?0:1 );

ﻩm_nAge = age;

ﻩ}

void setName(char *name){

ﻩstrcpy(m_strName, name);

ﻩ}

ﻩvoid setSex(int sex){

m_nSex= (sex=='m'?0:1 );

ﻩ}

ﻩvoid setAge(int age){

ﻩﻩm_nAge = age;

ﻩ}

ﻩchar * getName(){

ﻩreturn m_strName;

ﻩ}

ﻩintgetAge(){

return m_nAge;

ﻩ}

intgetSex(){

ﻩreturn m_nSex;

ﻩ}

ﻩvoid ShowMe(){

ﻩﻩcout〈〈" 姓名:”<〈m_strName〈〈endl;

ﻩcout<〈” 性不:"<〈(m_nSex==0?"男":”女”)〈

cout<<"年龄:”<

ﻩ}

};

class Teacher : public Person{

ﻩchar m_strDept[20];

ﻩint m_fSalary;

public:

ﻩTeacher(char *name,int age,char sex,char *dept,int sal ary)

ﻩ:Person(name,age,sex){

ﻩﻩstrcpy(m_strDept, dept);

ﻩ m_fSalary = salary;

ﻩ}

ﻩvoid ShowMe() {

Person::ShowMe();

ﻩﻩcout〈<" 工作单位:"〈〈m_strDept<<endl;

ﻩcout〈<"月薪:"<<m_fSalary〈

ﻩ}

ﻩvoid setSalary(int salary){

ﻩﻩm_fSalary = salary;

ﻩint getSalary(){

return m_fSalary;

ﻩ}

};

class Student : public Person{

char m_strID[12];

ﻩchar m_strClass[12];

public:

Student(char *name,intage,char sex,char *ID,char *Class)

ﻩﻩ:Person(name,age,sex){

ﻩstrcpy(m_strID, ID);

strcpy(m_strClass, Class);

ﻩ}

void ShowMe(){

ﻩcout<〈"学号:”<〈m_strID〈〈endl;

ﻩPerson::ShowMe();

ﻩﻩcout<<" 班级:”<〈m_strClass〈<”\n”;

ﻩ}

ﻩvoid setID(char * ID){

ﻩstrcpy(m_strID, ID);

ﻩ}

ﻩvoid setClass(char *Class){

ﻩ strcpy(m_strClass, Class);

ﻩ}

ﻩchar* getID(){

ﻩﻩreturn m_strID;

ﻩ}

ﻩchar*getClass(){

ﻩﻩreturnm_strClass;

ﻩ}

};

class Employee:public Person{

intm_fSalary;

public:

ﻩEmployee(char *name,int age,char sex,intsalary) ﻩﻩ:Person(name,age,sex){

ﻩm_fSalary = salary;

ﻩvoid setSalary(intsalary){

ﻩﻩm_fSalary = salary;

ﻩ}

ﻩint getSalary(){

ﻩﻩreturn m_fSalary;

ﻩ}

ﻩvoid ShowMe(){

ﻩﻩPerson::ShowMe();

ﻩcout<〈” 工资:"〈〈m_fSalary〈<”\n";

相关文档
最新文档