第十三周项目1(3)-动物这样叫
来源:互联网 发布:mac 管理员账户没有了 编辑:程序博客网 时间:2024/05/16 11:17
/* *Copyright (c) 2014, 烟台大学计算机学院 *All rights reserved. *文件名称:week13-1-3.cpp *作者:高赞 *完成日期:2015年 5 月 29 日 *版本号:v1.2 * *问题描述:将“名字”成员作为抽象类Animal数据成员被各派生类使用 */#include <iostream>using namespace std;class Animal{public: virtual void cry()=0;protected: Animal(string a):Name(a) {} string Name;};class Mouse:public Animal{public: Mouse (string a,char b):Animal(a),MouseSex(b) { string sex; if(MouseSex=='m') sex="公"; else sex="母"; cout<<"我叫"<<Name<<",是一只"<<sex<<"老鼠,我的叫声:"; } void cry() { cout<<"吱吱吱!"<<endl; }private: char MouseSex;};class Cat:public Animal{public: Cat(string a):Animal(a) { cout<<"我叫"<<Name<<",是一只猫,我的叫声:"; } void cry() { cout<<"喵喵喵!"<<endl; }};class Dog:public Animal{public: Dog(string a):Animal(a) { cout<<"我叫"<<Name<<",是一只狗,我的叫声:"; } void cry() { cout<<"汪汪汪!"<<endl; }};class Giraffe:public Animal{public: Giraffe (string a,char b):Animal(a),GiraffeSex(b) { string sex; if(GiraffeSex=='m') sex="公"; else sex="母"; cout<<"我叫"<<Name<<",是一头"<<sex<<"长颈鹿,"; } void cry() { cout<<"我不能发声!"<<endl; }private: char GiraffeSex;};int main( ){ cout<<"不知哪种动物,让我如何学叫?"<<endl; Animal *p; //p = new Animal();抽象类不能定义对象故不能用指针指向 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
- 第十三周 【项目1-动物这样叫】
- 第十三周项目1-动物这样叫
- 第十三周项目1动物这样叫
- 第十三周【项目1-动物这样叫】
- 第十三周 项目1-动物这样叫
- 第十三周项目1-动物这样叫
- 第十三周 项目1-动物这样叫(3)
- 第十三周项目1(3)-动物这样叫
- 第十三周 项目1-动物这样叫(3)
- 第十三周项目1--动物这样叫(3)
- 第十三周项目1-动物这样叫(3)
- 第十三周项目3:动物这样叫(1)
- 第十三周项目-项目2-(3)-动物这样叫
- 第十三周项目-项目2-(1)-动物这样叫
- 第十三周项目一 动物这样叫
- 第十三周项目一动物这样叫
- 第十三周项目一 动物这样叫
- 第十三周 项目一 动物这样叫
- 题目1011:最大连续子序列 简单dp
- Oracle高资源消耗SQL语句定位
- c++原生的unicode支持
- 在settimeout方法中传递参数
- CVS使用命令
- 第十三周项目1(3)-动物这样叫
- java获取当前某个时间点
- 搜索引擎——匹配方式
- 情景菜单ContextMenu的创建
- Candy -- leetcode
- CSDN学院系统停站维护
- GRE数学中的应试技巧之数量部分的三种题型
- iOS 数据存储 - 03SQLite编程
- 作为一个新人,怎样学习嵌入式Linux?(转自韦东山老师)