十二周——多态性——项目一(2)动物怎样叫
2015-05-31 16:10
225 查看
问题及代码:
运行结果:
/* *Copyright (c) 2014,烟台大学计算机学院 *All rights reserved. *文件名称:lily.cpp *作者:李莉 *完成日期:2015年5月24日 *版本号:v1.0 *问题描述:、根据给出的main()函数和运行结果的提示,设计出相关的各个类,注意观察运行结果,提取出每个类中需要的数据成员,并匹配上需要的成员函数。 *程序输入:无输入 *程序输出:运行结果 */ #include<iostream> using namespace std; class Animal { public: virtual void cry()=0; }; class Mouse:public Animal { private: string name; char sex; public: Mouse(string nam,char s):name(nam),sex(s) {}; virtual void cry() { if(sex=='m') cout<<"俺滴名字叫"<<name<<",俺是一只帅帅哒男老鼠,俺滴叫声是吱吱"<<endl; else cout<<"俺滴名字叫"<<name<<",俺是一只美美哒女老鼠,俺滴叫声是吱吱"<<endl; } }; class Cat:public Animal { private: string name; public: Cat(string nam):name(nam) {}; virtual void cry() { cout<<"俺滴名字是"<<name<<",是一只萌萌哒的喵喵,俺滴叫声是喵喵"<<endl; } }; class Dog:public Animal { private: string name; public: Dog(string nam):name(nam) {}; virtual void cry() { cout<<"俺滴名字是"<<name<<",是一只傲娇哒汪汪,俺滴叫声是汪汪"<<endl; } }; class Giraffe:public Animal { private: string name; char sex; public: Giraffe(string nam,char s):name(nam),sex(s) {}; virtual void cry() { if(sex=='m') cout<<"俺滴名字是"<<name<<",是一只美美哒长颈鹿菇凉,俺不会叫,因为俺滴脖子长"<<endl; else cout<<"俺滴名字是"<<name<<",是一只帅帅哒长颈鹿男生,俺不会叫,因为俺滴脖子长"<<endl; } }; int main( ) { Animal *p; Mouse m1("Jerry",'m'); p=&m1; p->cry(); Mouse m2("Jemmy",'f'); p=&m2; p->cry(); Cat c1("Tom"); p=&c1; p->cry(); Dog d1("Droopy"); p=&d1; p->cry(); Giraffe g1("Gill",'m'); p=&g1; p->cry(); return 0; }
运行结果:
相关文章推荐
- CSS中样式 display 属性 inline,block及inline-block
- linux防火墙iptables
- CBPeripheralManager学习笔记
- Nginx+uwsgi+Django 搭建一个简单的web服务器
- Java内部类
- CSS样式属性
- mysql 优化
- android 推送选择
- mysql 逻辑架构
- SAS文档:简单的随机点名器
- 学习笔记2_Day09_servlet的细节
- Maven: Maven Assembly Plugin configuration with multiple modules in a maven project
- ffmpeg安装第三方编码器库,ffmpeg编码h264
- 第43讲--项目四--算工资
- sqlserver:游标
- Java基础之集合框架详解(二)List篇
- 十二周——多态性——项目一(1)动物怎么叫
- Python之学习笔记(IO操作)
- 23种设计模式
- CGLIB 实现代理对象