Unit14-problem1.3-动物怎么叫
来源:互联网 发布:oop面向对象编程 编辑:程序博客网 时间:2024/04/29 15:09
/*Univercity:烟台大学*@Class</A>计134~4*@Author:薛富磊*@Time:2014-5-27*@Function:每一个Animal的派生类都有一个“名字”数据成员,这个成员设置为基类Animal的成员更好。 改造上面的程序,将“名字”成员作为抽象类Animal数据成员被各派生类使用。*@Args:*@Return:*/#include<iostream>#include<string>using namespace std;class Animal{ protected: string name; public: Animal(string nam):name(nam){} virtual void cry()=0;};class Mouse:public Animal{ private: char sex; public: Mouse(string nam,char s):Animal(nam),sex(s){} virtual void cry() { cout<<"我叫"<<name<<"是一只"<<((sex=='m')?"雄":"雌")<<"老鼠,我的叫声是:吱吱吱!"<<endl; }};class Cat:public Animal{ public: Cat(string nam):Animal(nam){} virtual void cry() { cout<<"我叫"<<name<<"是一只小花猫,我的叫声是:喵喵喵!"<<endl; }};class Dog:public Animal{ public: Dog(string nam):Animal(nam){} virtual void cry() { cout<<"我叫"<<name<<"是一只流浪狗,我的叫声是:汪汪汪!"<<endl; }};class Giraffe:public Animal{ private: char sex; public: Giraffe(string nam,char s):Animal(nam),sex(s){} virtual void cry() { cout<<"我叫"<<name<<"是一只"<<((sex=='m')?"雄":"雌")<<"长颈鹿,我的脖子长,不会唱歌"<<endl; }};int main( ){ Animal *p;// p = new Animal(); 心得体会:p->cry(); 必须去除,警告不是问题 // p->cry(); 问题执行结果 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;}
0 0
- Unit14-problem1.3-动物怎么叫
- Unit14-problem1.2-动物怎么叫
- 动物怎么叫
- 动物怎么叫
- 动物怎么叫
- Unit14_problem1.1-动物怎么叫
- 动物怎么叫(2)
- 14周项目一.3(动物怎么叫)
- 动物这样叫3
- 第十四周—1.1动物怎么叫
- 第十四周—1.2动物怎么叫
- 第十四周—1.3动物怎么叫
- 第十四周 项目一 动物怎么叫
- 第十三周--动物怎么叫(1)
- 2-13-1 动物怎么叫
- 第十三周项目:动物怎么叫
- 第十三周项目:动物怎么叫
- 2015.6.3动物这样叫
- 国密算法(SM2,SM3,SM4)辅助工具升级版(OTP+PBOC3.0)
- 第14周 项目1.2 动物这样叫
- 微软面试 续
- HDU 2143 BOX (水题)
- oracle调优 浅析有效的游标管理
- Unit14-problem1.3-动物怎么叫
- MySQL创建一张日期表
- 用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十一课
- 网络安全图书馆文件下载
- 检测笔记本电脑的主板,cpu,硬盘的温度
- Oracle之数据库一致性读的原理
- 《老罗Android》学习之Content Provider
- 测试测试
- android adb push 命令