第十三周上机实践——项目2-动物这样叫-(2)&(3)
来源:互联网 发布:linux mkdir p 编辑:程序博客网 时间:2024/05/21 05:57
/* *Copyright (c)2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:main.cpp,Animal.h,Animal.cpp *作 者:郭永恒 *完成日期:2016年5月28日 *版 本 号:v1.0 * *问题描述:把Animal设置成抽象类,name作为Animal的成员 */
Animal.h
#ifndef ANIMAL_H_INCLUDED#define ANIMAL_H_INCLUDED#include <iostream>class Animal{public: Animal(std::string nam):name(nam){} virtual void cry() = 0;protected: std::string name;};class Mouse: public Animal{public: Mouse(std::string nam,char se):Animal(nam),sex(se){} void cry();private: char sex;};class Cat:public Animal{public: Cat(std::string nam):Animal(nam){} void cry();};class Dog:public Animal{public: Dog(std::string nam):Animal(nam){} void cry();};class Giraffe:public Animal{public: Giraffe(std::string nam,char se):Animal(nam),sex(se){} void cry();private: char sex;};#endif // ANIMAL_H_INCLUDEDAnimal.cpp
#include "Animal.h"void Mouse::cry(){ std::cout << " 我叫" << name << ",是一只"; if(sex == 'm') std::cout << " 男"; else std::cout << " 女"; std::cout << " 老鼠,我的叫声是吱吱吱!" << std::endl;}void Cat::cry(){ std::cout << " 我叫" << name << ",是一只猫,我的叫声是:喵喵喵!" << std::endl;}void Dog::cry(){ std::cout << " 我叫" << name << ",是一条狗,我的叫声是:汪汪汪!" << std::endl;}void Giraffe::cry(){ std::cout << " 我叫" << name << ",是"; if(sex == 'm') std::cout << " 男"; else std::cout << " 女"; std::cout << " 长颈鹿,我的脖子太长,发不出声音来!" << std::endl;}main.cpp
#include "Animal.h"#include <iostream>using namespace std;int main(){ Animal *p; 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
- 第十三周上机实践——项目2-动物这样叫-(2)&(3)
- 第十三周上机实践——项目2-动物这样叫-(1)
- 第十三周上机实践项目 项目2--动物这样叫(3)
- 第十三周上机实践项目2(3):动物这样叫
- 第十三周上机实践项目 项目2--动物这样叫(2)
- 第十三周上机实践项目 项目2--动物这样叫(1)
- 第十三周实践项目2————动物这样叫(3)
- 第十三周上机实践项目2(2):动物这样叫
- 第十三周上机实践项目2(1):动物这样叫
- 第十三周实践项目2————动物这样叫(2)
- 第十三周实践项目2————动物这样叫(1)
- 第十三周 课后实践:项目一——动物这样叫(2)
- 第13周上机实践项目1——动物这样叫(2)
- 第十三周项目-项目2-(3)-动物这样叫
- 第十三周项目2-动物这样叫(3)
- 第十三周项目2-动物这样叫(3)
- 第十三周项目2-动物这样叫(3)
- 第十三周 课后实践:项目一——动物这样叫(3)
- 设计模式笔记-Decorator模式
- 10 个实用技巧,让 Finder 带你飞
- DragonBoard 410c的LittleKernel详解
- 山东省第五届ACM省赛题——Devour Magic(线段树区间覆盖+更新)
- QTableView类中实时刷新和固定选中的矛盾(即刷新后不清除选中标记)的解决方法
- 第十三周上机实践——项目2-动物这样叫-(2)&(3)
- (冒泡排序)找出数组中相差最小的两个元素
- 组件透明度与背景颜色透明度区别
- 欢迎使用CSDN-markdown编辑器
- 变量作用域
- Android Activity生命周期
- c++作业6
- 将QT5.6集成至VS2015
- 第六次上机-数组合并