




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验六 虚函数与多态性一、实验目的和要求1. 理解静态多态性和动态多态性。2. 掌握运算符重载的基本方法。3. 掌握虚函数的定义与使用方法。二、实验内容1.定义一个类Animal,该类中可以存放动物的名字,并有一个Identify函数用于显示动物的种类。定义两个类Cat和Dog,都继承自Animal,并重载Identify函数,不但要显示动物的种类,还要显示动物的名字。定义一个Tiger类,继承自Cat,重载Identify函数,显示动物的种类和名字。#includeusing namespace std;#includeclass Animalpublic:Animal(string Name,string Kind);virtual void show()=0;protected:string name;string kind;Animal:Animal(string Name,string Kind)name=Name;kind=Kind;class Cat:public Animalpublic:Cat(string Name,string Kind):Animal(Name,Kind)void show()cout猫的种类和名字是:endl;coutkind nameendl;class Dog:public Animalpublic:Dog(string Name,string Kind):Animal(Name,Kind)void show()cout狗的种类和名字是:endl;coutkind nameendl;class Tiger:public Catpublic:Tiger(string Name,string Kind):Cat(Name,Kind)void show()cout老虎的种类和名字是:endl;coutkind nameshow();Cat b(波斯猫,豆豆);p=&b;p-show();Dog c(狼狗,黑熊);p=&c;p-show();2、模拟定义存折类,并派生出信用卡类;在存折类中提供可以实现开户,存款、取款和查询余额的函数,要求取款金额必须小于余额;信用卡类对取款操作进行修改,允许透支一定金额;在main()函数中定义对象,模拟生活中存折和信用卡的使用过程。#includeusing namespace std;#include/*模拟定义存折类,并派生出信用卡类;在存折类中提供可以实现开户,存款、取款和查询余额的函数,要求取款金额必须小于余额;信用卡类对取款操作进行修改,允许透支一定金额;在main()函数中定义对象,模拟生活中存折和信用卡的使用过程。*/class bankbookprivate:string accountnumber;string password;string id;string name;float balance;/public:bankbook(string,string,string,string,float);void deposit();/存款void withdraw();/取款void inquiry();/查询;bankbook:bankbook(string Accountnumber,string Password,string Id,string Name,float Balance)accountnumber=Accountnumber;name=Name;password=Password;id=Id;balance=Balance;void bankbook:deposit()float money;cout请输入你要存款的金额money;balance=balance+money;cout您的余额为balanceendl;void bankbook:withdraw()float money;cout请输入你要取款的金额money;balance=balance-money;cout您的余额为balanceendl;void bankbook:inquiry()cout余额为:balanceendl;class credit:public bankbookprivate: int money;/表示所能取的最大额度public:void withdraw();void credit:withdraw() 3利用第一题中的各种动物,定义一个动物园类Zoo,管理动物,根据下面的提示编写动物类的相关函数。注意指针的用法。class Zoopublic:Zoo( int max);/构造函数,max为最多能圈养的动物数Zoo()delete residents;/析构函数int Accept(Animal *d);/接受动物void ListAnimals();/显示动物园所有的动物private:int maxanimals;/动物园最多能圈养的动物数int numanimals;/动物园当前圈养的动物数Animal *residents;/指向动物园全员的动物对象的指针数;#include using namespace std;#include class Animalpublic:Animal(string Name=,string Kind=);virtual void Identify()coutkindendl;protected:string name;string kind;Animal:Animal(string Name,string Kind)name=Name;kind=Kind;class Cat:public Animalpublic:Cat(string Name,string Kind):Animal(Name,Kind)void Identify()cout猫是:name 品种:kindendl; ;class Dog:public Animalpublic:Dog(string Name,string Kind):Animal(Name,Kind)void Identify()cout狗是:name 品种:kindendl; ;class Tiger:public Catpublic:Tiger(string Name,string Kind):Cat(Name,Kind)void Identify()cout老虎是:name 种类:kindendl; ;class Zoopublic:Zoo( int max);/构造函数,max为最多能圈养的动物数/Zoo()delete residents/析构函数int Accept(Animal *d);/接受动物void ListAnimals();/显示动物园所有的动物private:int maxanimals;/动物园最多能圈养的动物数int numanimals;/动物园当前圈养的动物数Animal *residents;/指向动物园全员的动物对象的指针数;Zoo:Zoo(int max)maxanimals=max;numanimals=0;residents=new Animal*max;int Zoo:Accept(Animal *d)residentsnumanimals=d;numanimals+;return numanimals;void Zoo:ListAnimals()int i=0;cout动物园里面包括的动物有:numanimals只动物,分别为:endl;for(i=0;iIdentify();void main()Animal *p;Cat c(凯
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 隧道机械化施工中的设备管理策略与实施计划制定研究考核试卷
- 铅酸电池的循环利用与环保技术考核试卷
- 货运火车站物流企业绩效管理体系构建与实施考核试卷
- 陶瓷艺术工作室运营与管理考核试卷
- 铜冶炼厂的安全管理体系构建与运行考核试卷
- 小儿常见眼部疾病诊疗与预防
- 食品营养与卫生
- 脑血管疾病的营养管理
- 呼吸科评分量表临床应用与管理规范
- Glisoprenin-A-生命科学试剂-MCE
- 校长在2025暑假前期末教师大会上的讲话:静水深流脚踏实地
- (2025)全国“安全生产月活动”《安全知识》竞赛试题库(附含答案)
- (2025)党校入党积极分子培训结业考试题库与答案
- 2025年中国超薄柔性玻璃(UTG)行业深度分析、投资前景及发展趋势预测报告(智研咨询)
- 交房期间业主维权突发事件应急预案
- 贷款后管理与客户满意度提升
- 自动生成的文档-202504081202-99
- 【专题训练】专题04三角形(考题猜想九大题型)(学生版+解析)-2025年七年级数学下学期期末总复习(北师大版)
- 2025年全国护士资格考试试卷及答案
- 费用类报销管理制度
- 难点01:总集篇·十三种简便计算巧算法【十三大考点】-2024年小升初数学典型例题系列(原卷版+解析)
评论
0/150
提交评论