




已阅读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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全培训被忽略的检查课件
- 涂鸦小人课件
- 2025年北京中医药大学东方医院枣庄医院公开招聘备案制工作人员(59人)考前自测高频考点模拟试题及答案详解(各地真题)
- 涂装工艺知识培训课件
- 涂装工艺培训知识点
- 2025广西百色靖西市人民医院招聘导诊分诊员1人模拟试卷附答案详解(典型题)
- 2025广东深圳市宝安区陶园中英文实验学校招聘精英教师16人考前自测高频考点模拟试题及答案详解(新)
- 2025宝鸡市某医院招聘药学专技人员(3人)模拟试卷及答案详解(易错题)
- 2025广东中山大学附属口腔医院工勤事务岗工作人员(驾驶员)招聘1人考前自测高频考点模拟试题及答案详解(各地真题)
- 安全培训背后动作要求课件
- 无人机操控与维护专业教学标准(中等职业教育)2025修订
- 十五五护理工作发展规划
- 消防宣传安全常识课件
- 2025年内蒙古鄂尔多斯市国源矿业开发有限责任公司招聘笔试参考题库含答案解析
- 2025年广州市越秀区九年级中考语文一模试卷附答案解析
- GB/T 1040.1-2025塑料拉伸性能的测定第1部分:总则
- 学校食堂食品安全风险管控清单
- DB54/T 0316-2024藏香生产技术规程
- 电力行业职业健康卫生管理制度
- 新22J01 工程做法图集
- 口腔诊所医患沟通与纠纷处理预案
评论
0/150
提交评论