实验四 继承与派生

实验四 继承与派生

ID:38698799

大小:69.50 KB

页数:8页

时间:2019-06-17

实验四 继承与派生_第1页
实验四 继承与派生_第2页
实验四 继承与派生_第3页
实验四 继承与派生_第4页
实验四 继承与派生_第5页
资源描述:

《实验四 继承与派生》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验四 派生类与继承【实验类型】验证性实验【实验课时】2学时【实验目的】(1)理解类的继承的概念,能够定义和使用类的继承关系。(2)掌握派生类的声明与定义方法。(3)熟悉公有派生和私有派生的访问特性。(4)学习虚基类在解决二义性问题中的作用。【实验环境】硬件:计算机软件:MicrosoftVisualC++6.0【实验内容】1、按要求阅读、编写、调试和运行以下程序。(1)实验内容①定义一个基类MyArray,基类中可以存放一组整数。classMyArray{public:   MyArray(int

2、leng);   ~MyArray();   voidInput();   voidDisplay();protected:longint*alist;  //指向动态申请的一组空间intlength;};   //整数的个数基类中有构造函数、析构函数、输入数据和输出数据的函数。②定义一个类SortArray继承自MyArray,在该类中定义函数实现排序功能。③定义一个类ReArray继承自MyArray,在该类中定义函数实现逆转功能。④定义一个类AverArray继承自MyArray,在该类中定义

3、函数Aver求解整数的平均值。⑤定义NewArray类,同时继承了SortArray,ReArray和AverArray,使得NewArray类的对象同时具有排序、逆转、和求平均值的功能。在继承的过程中声明为虚基类,体会虚基类在解决二义性问题中的作用。(2)实验程序(参考)程序如下:#include"iostream.h"#include"process.h"classMyArray{public:   MyArray(intleng);   ~MyArray();   voidInput();  

4、 voidDisplay();protected:    longint*alist;  //指向动态申请的一组空间    intlength;      //整数的个数};MyArray::MyArray(intleng){   length=leng;   alist=newlongint[length];   if(alist==NULL)   {        cout<<"对不起,创建失败。请重试。";exit(1);      }}MyArray::~MyArray(){ delete[

5、]alist;   cout<<"数组被清空。"<

6、++)   cin>>*p;}classSortArray:virtualpublicMyArray{private:      intlen;      longint*sp;public:  SortArray(intleng):MyArray(leng)  {   len=leng;        Sort();  };  voidSort()  {  sp=newlongint[len];      longintq;      sp=alist;      for(inti=0;i

7、;i++){       for(intj=0;j*(sp+j+1))        {          q=*(sp+j);          *(sp+j)=*(sp+j+1);         *(sp+j+1)=q;        }}}  }}; classReArray:virtualpublicMyArray{  //这里是虚基类,public:   voidReverse()   {    rp=newlongint[l

8、en];     longintq;     rp=alist;     for(inti=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。