第13周项目2:动物这样叫(2)
来源:互联网 发布:网络咖啡电影完整版 编辑:程序博客网 时间:2024/04/29 01:31
Copyright(c)2016,烟台大学计算机与控制工程学院 All rights reserved. 文件名称:第13周项目2:动物这样叫(2) 作者:于子娴 完成日期:2016.6.1 版本号:v1.0 问题描述:显然,Animal设计为抽象类更合适,Animal不需要能够实例化,是专门作基类使用的。改造程序,使Animal设计为抽象类,这时main()函数中p = new Animal();将出错,将此行删除。 输入描述: 程序输出: #include iostreamusing namespace std;class Animal{public virtual void cry()=0;};class Mousepublic Animal{public Mouse(string nam,char se)name(nam),sex(se){} void cry() { if(sex=='m') cout我叫name,是一只男老鼠,我的叫声是:吱吱吱!endl; else if(sex=='f') cout我叫name,是一只女老鼠,我的叫声是:吱吱吱!endl; }private string name; char sex;};class Catpublic Animal{public Cat(string nam)name(nam){} void cry() { cout我叫name,是一只猫,我的叫声是:喵喵喵!endl; }private string name;};class Dogpublic Animal{public Dog(string nam)name(nam) {} void cry() { cout我叫name,是一条狗,我的叫声是:汪汪汪!endl; }private string name;};class Giraffepublic Animal{public Giraffe(string nam,char se)name(nam),sex(se) {} void cry() { if(sex=='m') cout我叫name,是男长颈鹿,我的脖子太长,发不出声音来!endl; else if(sex=='f') cout我叫name,是女长颈鹿,我的脖子太长,发不出声音来!endl; }private string name; char sex;};void fun(Animal p){ p-cry();}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;}
运行结果:
0 0
- 第13周项目2--动物这样叫(2)
- 第13周项目2:动物这样叫(2)
- 第13周 【项目1-动物这样叫】(2)
- 第13周项目1-动物这样叫(2)
- 第13周项目1-动物这样叫(2)
- 第13周项目1-动物这样叫(2)
- 第13周-项目2-动物这样叫(1)
- 第13周-项目1-动物这样叫(2)
- 第13周项目(2)-动物这样叫
- 第13周项目2--动物这样叫(1)
- 第13周项目2:动物这样叫(1)
- 第13周项目2:动物这样叫(3)
- 第13周项目2:动物这样叫(1)
- 第13周项目2--动物这样叫(3)
- 第13周项目2-动物这样叫(1)
- 第13周项目2—动物这样叫2
- 第13周项目1-动物这样叫(2)
- 第13周项目2-动物这样叫1
- Merge Sorted Array
- Java之关键字super
- 160601 TextField设置placeholder颜色
- android studio 克隆git项目以及设立项目的全过程
- Linux Win8 双系统时无法挂载硬盘的解决方法
- 第13周项目2:动物这样叫(2)
- QQ通讯机制讨论
- ccah-500 第13题Which three basic configuration parameters must you set to migrate
- 解决ubuntu ufw开启时,kvm虚拟机网络全部无法访问
- LeetCode128—Longest Consecutive Sequence
- 关于用python 的imaplib提取自己163,qq邮箱的内容
- Floodlight源码阅读之TreeMap存储ACL(一)
- mysql悲观锁总结和实践
- Mina基础框架及客户端-服务端框架对应实现例子