2013级C++第14周(春)项目——多态性、虚函数和抽象类 【项目1-动物这样叫】
来源:互联网 发布:java怎么用session 编辑:程序博客网 时间:2024/06/04 00:04
/** 程序的版权和版本声明部分* Copyright (c)2014, 在校学生* All rightsreserved.* 文件名称: 1.cpp* 作 者: 刘旺* 完成日期:2014年6月3日* 版本号: v1.0* 输入描述:无* 问题描述: 根据给出的main()函数和运行结果的提示,设计出相关的各个类, 注意观察运行结果,提取出每个类中需要的数据成员,并匹配上需要的成员函数。*/#include <iostream>#include <cstring>using namespace std ;class Animal{public: virtual void cry() { cout<<"不知哪种动物,让我如何学叫?"<<endl; }};class Mouse:public Animal{public: Mouse(char *nam,char y){ strcpy(name,nam) ; x = y ; } void cry(){ cout << "我叫"<< name ; if(x=='m'){ cout << ",是一只男老鼠," ; } else{ cout << ",是一只女老鼠," ; } cout << "我的叫声:是吱吱吱" << endl ; }private: char name[20] ; char x ;};class Cat:public Animal{public: Cat(char *nam){ strcpy(name,nam) ; } void cry(){ cout << "我叫" << name << ",是一只猫,"<< "我的叫声是喵喵喵" << endl ; }private : char name[20] ;};class Dog:public Animal{public: Dog(char *nam){ strcpy(name,nam) ; } void cry(){ cout << "我叫" << name << ",我的叫声是汪汪汪" << endl ; }private: char name[20] ;};class Giraffe:public Animal{public: Giraffe(char *nam, char x1){ strcpy(name,nam) ; x = x1 ; } void cry(){ cout <<"我叫" << name ; if(x=='m'){ cout << ",是男长颈鹿" ; }else{ cout << ",是女长颈鹿" ; } cout << "我的脖子太长,发不出来声音来!" ; }private: char name[20] ; char x ;};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
- 2013级C++第14周(春)项目——多态性、虚函数和抽象类 【项目1-动物这样叫】
- 动物这样叫(多态性、虚函数和抽象类)
- 第13周-多态性-项目1-动物这样叫
- 2013级C++第14周(春)项目——多态性、虚函数和抽象类
- 第13周项目1—动物这样叫
- 第13周项目1—动物这样叫2.3
- 第十三周项目1-2:动物这样叫-抽象类
- 第十三周项目1——动物这样叫(抽象类)
- 第13周项目1动物这样叫(抽象类)
- 第13周项目1-动物这样叫(3抽象类)
- 第14周项目1-动物这样叫
- 第13周项目2—动物这样叫2
- 第13周项目2—动物这样叫3
- 第13周项目二—动物这样叫
- 第十三周项目1-1:动物这样叫-虚函数
- 第13周项目1动物这样叫(1)虚函数
- 第13周项目1-动物这样叫(2纯虚函数)
- C++第13周项目多态性 【项目2-动物这样叫】
- ant 简介
- 编程语言的选择并非无关紧要
- 将GridView中数据导出为Excel
- 初学makefile
- fork两次解决僵尸进程
- 2013级C++第14周(春)项目——多态性、虚函数和抽象类 【项目1-动物这样叫】
- Android 基于Socket的聊天室
- Android中关于JNI 的学习(六)JNI中注册方法的实现
- oracle:完整剖析PL/SQL DEVELOPER与SQL PLUS字符集设置
- CruiseControl定点触发(该文章为复制别人的博客)
- _00011 Redis 安装以及快速入门之一(Redis安装)
- OCP 1Z0 051 QUESTION NO: 45
- Setup tftp+dhcp on Mac OSX for pxe
- startActivityForResult,onActivityResult,setResult的用法