第十四周--项目1-Animal

来源:互联网 发布:数据监测系统 编辑:程序博客网 时间:2024/05/17 09:00
/*    * 程序的版权和版本声明部分    * Copyright (c)2013, 烟台大学计算机学院学生    * All rightsreserved    * 文件名称:score.cpp    * 作 者:赵兰     * 完成日期: 2013年 6月11 日    * 版本号: v1.0    * 输入描述:略    * 问题描述:根据给出的基类Animal和main()函数  * 输出:如下    */       // aaa.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>#include<string>using namespace std;class Animal     //声明抽象基类Animal{public:  virtual void cry()const=0;   //纯虚函数};class Mouse:public Animal  //Mouse是Animal的公用派生类{public: Mouse(string n,char s):name(n),sex(s){}//定义一个有参的构造函数,用参数的初始化表对数据成员初始化    void AnimalName(){cout<<"Mouse ";} void cry()const{cout<<"我是小老鼠我的名字叫"<<name<<"我的性别是"<<sex<<"我的叫声是吱吱吱"<<endl;}protected: string name; char sex;};class Cat:public Animal  //Cat是Animal的公用派生类{public: Cat(string n):name(n){} void AnimalName(){cout<<"Cat   ";} void cry()const{cout<<"我是小猫我的名字叫"<<name<<"我的叫声是“喵喵喵”";}   protected:string name;};class Dog:public Animal  {public:Dog(string n):name(n){}void AnimalName(){cout<<"Dog   ";}void cry()const{cout<<"我是小狗我的名字叫"<<name<<"我的叫声是“汪汪汪”";}   protected:   string name;};class Giraffe :public Animal  {public:Giraffe(string n, char s):name (n),sex(s){}  void AnimalName(){cout<<"Mouse   ";}  void cry()const{cout<<"我是长颈鹿我的名字叫"<<name<<"我的性别是" <<sex<<"我是小哑巴";}   protected:  string  name; char sex; };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;}


原创粉丝点击