c++程序设计 多态和纯虚函数

本篇博客介绍了如何使用C++实现多态特性,通过一个实例展示了Dog和Cat类继承Animal类,并覆盖基类的纯虚函数speak()。用户输入整数N,程序创建N个Dog和Cat对象,交替调用speak()并逐个销毁,输出相应的动物叫声。
摘要由CSDN通过智能技术生成

基于前面的在线编程作业改写

Dog类和Cat类继承Animal类

根据用户输入的数值,创建相应个数的 Dog 对象和 Cat对象,然后调用 speak() 之后再销毁。(10分)
题目内容:

  1. 编写三个类

Dog类和Cat类继承Animal类;

Dog类、Cat类、Animal类各有一个默认构造函数,分别输出字符串“Dog”、“Cat”和“Animal”。输出字符串后换行。注意三个字符串的首字母都是大写。

在 Animal 类中定义纯虚函数 speak();

在 Dog 和 Cat类中覆写基类的 speak() 函数。Dog类的speak函数输出字符串“wang”之后换行;Cat类的speak函数输出字符串“miao”之后换行。注意字符串“wang”和“miao”都是小写字母

上述三个类中如果有任何其它函数,则这些函数不直接或者间接输出任何信息

  1. 编写主函数

在主函数中接受用户输入的一个整数N(大于0);

创建一个vector对象v (你可以用其它名字),存储Animal对象的指针。

按照先创建一个 Dog 对象,紧接着再创建一个 Cat 对象这样交替创建的次序,一共创建 N 个 Dog对象和N个 Cat 对象;将这些Dog对象和Cat对象的指针按照创建的次序都存入v中。(提示:可以使用vector::push_back()函数)。

将存入v中的对象,按照先后次序,逐个调用 speak() 函数,然后用 delete 显式销毁。(注意:每调用一个对象的 speak() 之后,就立即用 delete 销毁该对象)。

程序中除了接受用户输入的整数之外,没有任何其它输入语句;

程序中除了构造函数和speak()的输出之外,没有任何其它输出。

输入格式:

一个大于零的整数

输出格式:

输出多行信息,最后一行是空行

没有任何其它提示信息

输入样例:

2

输出样例:

Animal

Dog

Animal

Cat

Animal

Dog

Animal

Cat

wang

miao

wang

miao

注意:输出结果的最后一行是空行

时间限制:500ms内存限制:32000kb

#include <iostream>
#include <vector>


class 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值