C++可视化实验二_第1页
C++可视化实验二_第2页
C++可视化实验二_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验二类的继承与派生一、实验目的掌握类的声明和使用。掌握类的声明和对象的声明。复习具有不同访问属性的成员的访问方式。观察构造函数和析构函数的执行过程。学习声明和使用类的继承关系,声明派生类;熟悉不同继承方式下对基类成员的访问控制;二.实验内容设计一个用于人事管理的People(人员)类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:number(编号)、sex(性别)、birthday(出生日期)、id(身份证号)等等。具有的属性如下:姓名charname[ll]、编号charnumber[7]、性别charsex[3]、生日birthday、身份证号charid[16]。其中“出生日期”声明为一个“日期”类内嵌子对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、拷贝构造函数、内联成员函数、组合。在测试程序中声明people类的对象数组,录入数据并显示。从people(人员)类派生出student(学生)类,添加属性:班号charclassNO[7];从people类派生出teacher(教师)类,添加属性:职务charpship[11]、部门chardepartt[21]。从student类中派生出graduate(研究生)类,添加属性:专业charsubject[21]、导师teacheradviser;从graduate类和teacher类派生出TA(助教博士生)类,重载相应的成员函数,测试这些类。三.实验步骤1.程序代码#include<iostream>usingnamespacestd;classdata{ //data类的定义public:data(inty=0,intm=0,intd=0) //构造函数{year=y;month=m;day=d;}data(data&mybirthday);intgety(){returnyear;}intgetm(){returnmonth;}intgetd(){returnday;}voidouput(){cout<<"年:"<<year<<"月:"<<month<<"日:"<<day<<endl;}private:intyear;intmonth;intday;};data::data(data&mybirthday) //复制构造函数的实现{year=mybirthday.year;month=mybirthday.month;day=mybirthday.day;}classpeople{//personal类的定义public: //外部接口people(intn,chars,inti,datab);people(people&liming);voidinput();voidoutput();private:intnumber;charsex;intid;databirthday; //data类的对象birthday};//组合类的构造函数实现people::people(intn,chars,inti,datab):number(n),sex(s),id(i),birthday(b){}//组合类的复制构造函数实现people::people(people&liming):number(liming.number),sex(liming.number),id(liming.id){}voidpeople::output(){cout〈〈"编号:"〈〈number〈〈"性别:"〈〈sex〈〈"身份证号:"〈〈id;birthday.ouput();intmain(){datamybirthday(1989,07,07);peoplezhaoxiaojun(10051030,'m',62202402,mybirthday);cout<<"myinformationis:"<<endl;cout<<"注意性别中m为男,f为女"〈〈endl;zhaoxiaojun.output();return0;}调试程序运行程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论