14周项目一.3(动物怎么叫)
2013-06-04 08:57
363 查看
/* *程序的版权和版本声明部分 * Copyright (c)2013, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称:Animal.cpp * 作 者: 田凤 *完成日期:2013年6月4日 * 版本号: v1.0 * 输入描述: 略 * 问题描述:略 * 输出:输出动物叫声 *代码: #include<iostream> #include<string> using namespace std; class Animal { public: Animal(string nam):name(nam){} virtual void cry()=0; protected: string name; }; class Mouse:public Animal { public: Mouse(string nam,char s):Animal(nam),sex(s){} virtual void cry() { cout<<"我叫"<<name<<",是一只"<<((sex=='m')?"男":"女")<<"老鼠,我的叫声是:吱吱吱!"<<endl; } private: char sex; }; 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 { public: Giraffe(string nam,char s):Animal(nam),sex(s){} virtual void cry() { cout<<"我叫"<<name<<",是"<<((sex=='M')?"男":"女")<<"长颈鹿,我的脖子太长,发不出声音来!"<<endl; } private: char sex; }; int main( ) { Animal *p; //p = new Animal(); //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; }
*运行结果:
*心得体会:name作为基类数据成员可以被各派生类使用。
相关文章推荐
- 14周项目一.2(动物怎么叫)
- 14周项目一.1(动物怎么叫)
- 第十三周项目:动物怎么叫
- 第十三周项目一 动物怎么叫(抽象类)
- C++第14周项目1 - 动物怎么叫
- 第14周项目1 - 动物怎么叫
- 14周项目一动物这样叫
- 第13周项目2-动物怎么叫
- 十二周——多态性——项目一(1)动物怎么叫
- 第13周项目2-动物怎么叫(改)
- 第十四周 项目一 动物怎么叫
- 第十三周项目:动物怎么叫
- 14周【项目1-动物这样叫】下面是给出的基类Animal声明和main()函数
- 第十四周 项目一:动物怎么叫?(抽象类)
- 十二周——多态性——项目一(3)动物怎么叫
- intellij idea中的项目怎么显示树形目录
- 在vs2008中怎么把一个项目复制到另一个项目中
- 怎么自定义windows系统的性能监视器类别中的子计数项目
- 在项目(新闻内容系统)中,运用百度编辑器内容存入数据库(包括html标签),怎么运用工具来转换成text(不带html标签)!
- 第13周项目1-动物这样叫