6-2 多态性与虚函数
来源:互联网 发布:淘宝有卖假的医院证明 编辑:程序博客网 时间:2024/05/16 18:36
Problem Description
通过本题目的练习可以掌握多态性的概念和虚函数的定义和使用方法
要求定义一个基类Pet,它有一个字符指针型数据成员name和一个虚成员函数Speak()用于输出pet的叫声。;派生类Dog和Cat从基类Pet派生而来。他们从基类继承并重新改写了speak()函数,分别用于输出Dog类和Cat类的叫声(具体输出内容参考示例输出)。要求利用虚函数技术编写代码,使得程序能够输出下面的内容。
Input
无
Output
输出数据共有3行,本题目要求输出内容必须与示例中的相同。
Example Input
Example Output
How does a pet speak ?
I am a cat,My name is Tom My sound is miao!miao!
I am a dog,My name is Snoppy My sound is wang!wang!
#include <iostream>#include <cstring>using namespace std;class Pet{public: string name;public: virtual void speak() { cout<<"How does a pet speak ?"<<endl; }};class Cat:public Pet{public: void speak()//继承基类函数并重新定义 { cout<<"I am a cat,My name is Tom My sound is miao!miao!"<<endl; }};class Dog:public Pet{public: void speak() { cout<<"I am a dog,My name is Snoppy My sound is wang!wang!"<<endl; }};int main(){ Pet p; Cat c; Dog d; Pet *pt; pt = &p;//定义一个指向基类的指针 pt->speak();//调用基类的speak函数 pt = &c;//指向派生类Cat pt->speak();//因为使基类的speak函数为基类,所以现在调用的是Cat的speak函数 pt = &d; pt->speak(); return 0;}
阅读全文
0 0
- 【2680】6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 【2680】6-2 多态性与虚函数
- sdut 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- sdut 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- SDUT2680 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 6-2 多态性与虚函数
- 汇编语言不允许通过的指令
- 深度学习|神经网络模型简介和梯度下降求解
- 后端_第十三课_FLASK
- Linux开机自动挂载存储的两种方式
- ActiveMQ 持久化
- 6-2 多态性与虚函数
- eclipse修改操作界面颜色
- php经验总结
- java awt生成图片消除锯齿
- go源码编译安装包,下载不了问题!
- Could not find class 'android.graphics.drawable.RippleDrawable', referenced from method android.supp
- linux查看文件内容
- Serial Programming HOWTO——Linux 串口编程HOWTO
- python+ES6.0查询(一)