实验三 多态性与继承

实验三 多态性与继承

ID:46812861

大小:235.00 KB

页数:7页

时间:2019-11-28

实验三 多态性与继承_第1页
实验三 多态性与继承_第2页
实验三 多态性与继承_第3页
实验三 多态性与继承_第4页
实验三 多态性与继承_第5页
资源描述:

《实验三 多态性与继承》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、面向对象程序设计实验报告实验三实验题目:多态性与继承实验类型:验证实验地点:第一软件实验室指导老师:黄潇专业班级:计算机科学与技术系1103班姓名:孙雪桄(2011100337)2012年11月26日一、实验目的和要求1.掌握运算符重载的两种基本方法;2.掌握虚函数的定义和使用方法;3.掌握抽象类的定义和使用;二、实验内容1.实验要求:定义一个类Animal,该类中可以存放动物的名字,并有一个identify函数用于显示动物的种类。定义两个类Cat和Dog,都继承自Animal,并重载identify函数,不但

2、要显示动物的种类,还要显示动物的名字。定义Tiger类,继承自Cat,重载identify函数,显示动物的种类和名字。定义一个动物园类Zoo,管理动物,根据下面的提示编写动物类及相关函数。注意指针虚函数的用法。classZoo{public:Zoo(intmax);~Zoo(){deleteresidents;}intAccept(Animal*a);voidListAnimals();private:intmaxAnimals;//动物园能最多圈养的动物数intnumAnimals;//动物园当前圈养的动物数

3、Animal**residents;//指向动物园圈养的动物对象的指针数组};2.为Date类重载定义“+”运算符,实现某一个日期上加一个天数。实验要求:假定每月都是30天,每年都是360天。输出相加后的新日期。三、实验步骤1.打开VC++6.0软件,创建Win32ConsoleApplication工程test1,并保存于硬盘。2.在该工程中创建C++SourceFile程序,则进入编程窗口。3.在编辑窗口编写代码,结束后保存、编译、连接和运行。4.如果编译连接运行中出现错误,则按提示调试并修改,直至正确运行

4、并得出结果。四、程序源代码及运行结果1.代码:#includeusingnamespacestd;classAnimal{public:Animal(char*n){name=newchar[strlen(n)+1];strcpy(name,n);}~Animal(){deletename;}virtualvoididentify()=0;protected:char*name;};classCat:publicAnimal{public:Cat(char*n):Animal(n){}vir

5、tualvoididentify(){cout<<"这是一只猫!"<

6、){cout<<"这是一只狗!"<

7、);private:intmaxAnimals;//动物园能最多圈养的动物数intnumAnimals;//动物园当前圈养的动物数Animal**residents;//指向动物园圈养的动物对象的指针数组};intZoo::Accept(Animal*a){if(numAnimals==maxAnimals)return0;++numAnimals;inti=0;while(residents[i]!=NULL)++i;residents[i]=a;return++i;}voidZoo::ListAnimals

8、(){cout<0)for(inti=0;iidentify();}intmain(){Animal*p1,*p2,*p3,*p4,*p5;charr1[]="

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

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

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