第十三周项目二-动物这样叫(3)
来源:互联网 发布:python标准输入输出 编辑:程序博客网 时间:2024/05/16 04:46
/**Copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved*文件名称:123.cpp*作 者:王蕊*完成日期:2016年5月31日*版 本 号:v1.0**问题描述:每一个Animal的派生类都有一个“名字”数据成员,这一共有的成员完全可以由基类提供改造上面的程序,将这一数据成员作为抽象类Animal数据成员被各派生类使用*/#include "iostream"#include<string>using namespace std;class Animal{protected: string name;public: Animal(string n):name(n){} virtual void cry()=0;};class Mouse : public Animal{private: char sex;public: Mouse(string n, char s):Animal(n),sex(s) {} virtual void cry() { cout<<"我叫"<<name<<",是一只"<<((sex=='m')?"男":"女")<<"老鼠,我的叫声是:吱吱吱!"<<endl; }};class Cat : public Animal{public: Cat(string n):Animal(n) {} virtual void cry() { cout<<"我叫"<<name<<",是一只猫,我的叫声是:喵喵喵!"<<endl; }};class Dog : public Animal{public: Dog(string n):Animal(n) {} virtual void cry() { cout<<"我叫"<<name<<",是一条狗,我的叫声是:汪汪汪!"<<endl; }};class Giraffe : public Animal{private: char sex;public: Giraffe(string n,char s):Animal(n), sex(s) {} virtual void cry() { cout<<"我叫"<<name<<",是"<<((sex=='m')?"男":"女")<<"长颈鹿,我的脖子太长,发不出声音来!"<<endl; }};int main( ){ Animal *p; Mouse m1("Jerry",'m'); p=&m1; p->cry(); //输出: 我叫Jerry,是一只男老鼠,我的叫声是:吱吱吱! Mouse m2("Jemmy",'f'); p=&m2; p->cry(); //输出: 我叫Jemmy,是一只女老鼠,我的叫声是:吱吱吱! Cat c1("Tom"); p=&c1; p->cry(); //输出: 我叫Tom,是一只猫猫,我的叫声是:喵喵喵! Dog d1("Droopy"); p=&d1; p->cry(); //输出: 我叫Droopy,是一条狗狗,我的叫声是:汪汪汪! Giraffe g1("Gill",'m'); p=&g1; p->cry(); //输出: 我叫Gill,是男长颈鹿,脖子太长,发不出声音来! return 0;}
运行结果:
0 0
- 第十三周项目二-动物这样叫
- 第十三周项目二-动物这样叫(3)
- 第十三周项目二动物这样叫二
- 第十三周项目二-动物这样叫(1)
- 第十三周项目二-动物这样叫(2)
- 第十三周项目二,动物这样叫2
- 第十三周项目二动物这样叫一
- 第十三周项目二动物这样叫三
- 第十三周项目-项目2-(3)-动物这样叫
- 第十三周项目一 动物这样叫
- 第十三周 【项目1-动物这样叫】
- 第十三周项目1-动物这样叫
- 第十三周项目1动物这样叫
- 第十三周【项目1-动物这样叫】
- 第十三周 项目1-动物这样叫
- 第十三周项目一动物这样叫
- 第十三周项目一 动物这样叫
- 第十三周 项目一 动物这样叫
- muleESB的第一个开发实例-HelloWorld(二)
- 使用PHP的ZipArchive类实现多个文件的zip压缩包打包下载
- synchronized关键字
- java之JFrame边界布局
- JSP数据显示在页面一行内
- 第十三周项目二-动物这样叫(3)
- 【MyBatis】——解决字段名与实体类属性名不相同的冲突
- muleESB简介和安装(一)
- linux高级原3
- java多线程---顺序打印ABC的三种实现---join方法
- 创建uv动画
- Java网络编程——基于TCP的Socket编程
- A+B Problem (Case Count)
- 解决卸载wifi共享软件后无法连网的问题