第十三周实验报告 任务二(3)
2012-05-14 13:22
344 查看
源程序:
截图:
![](http://my.csdn.net/uploads/201205/14/1336973057_7479.JPG)
截图和上一张一样啊···觉得做错了···是不是应该在Animal类里就声明上构造函数和虚的析构函数啊···?
#include "iostream" #include<string> using namespace std; class Animal { public: virtual void cry() = 0;/*{cout<<"不知哪种动物,让我如何学叫?"<<endl;}*/ protected: string name; }; class Mouse:public Animal { public: Mouse(string na){name = na;} void cry(){cout << "我叫Jerry,是一只老鼠,我的叫声是:吱吱吱!"<<endl;} }; class Cat:public Animal { public: Cat(string na){name = na;} void cry(){cout << "我叫Tom,是一只猫,我的叫声是:喵喵喵!"<<endl;} }; class Dog:public Animal { public: Dog(string na){name = na;} void cry(){cout << "我叫Droopy,是一只狗,我的叫声是:汪汪汪!"<<endl;} }; class Giraffe:public Animal { public: Giraffe(string na){name = na;} void cry(){cout << "我叫Gill,是一只长颈鹿,脖子太长,发不出声音来..."<<endl;} }; int main( ) { Animal *p; //p = new Animal(); p->cry(); //输出: 不知哪种动物,让我如何学叫?(问题出自此处) Mouse m("Jerry"); p=&m; p->cry(); //输出: 我叫Jerry,是一只老鼠,我的叫声是:吱吱吱! Cat c("Tom"); p=&c; p->cry(); //输出: 我叫Tom,是一只猫,我的叫声是:喵喵喵! Dog d("Droopy"); p=&d; p->cry(); //输出: 我叫Droopy,是一条狗,我的叫声是:汪汪汪! Giraffe g("Gill"); p=&g; p->cry(); //输出: 我叫Gill,是长颈鹿,脖子太长,发不出声音来! system("pause"); return 0; }
截图:
截图和上一张一样啊···觉得做错了···是不是应该在Animal类里就声明上构造函数和虚的析构函数啊···?
相关文章推荐
- 第十三周实验报告任务4
- 《第十三周实验报告任务2》
- 第十三周实验报告任务1
- 第十三周实验报告(任务一)
- 第十三周实验报告(任务三)【抽象基类Shape】
- 第十三周实验报告(任务二)
- 第十三周实验报告(任务三)
- 《第十三周实验报告任务3》
- 《第十三周实验报告任务1》
- 第十三周实验报告(任务四)【抽象类CSolid,含有两个求表面积及体积的纯虚函数】
- 第十三周实验报告(任务一)【虚函数、多态性、抽象类】
- 第十三周实验报告 任务一
- 《第十三周实验报告任务4》
- C++程序设计实验报告(六十九)---第十三周任务一
- 第十三周实验报告 任务二(1)
- C++程序设计实验报告(七十)---第十三周任务二
- 第十三周实验报告 任务二(2)
- C++程序设计实验报告(七十一)---第十三周任务三
- 第十三周实验报告 任务三
- 第十三周实验报告 任务二(3)改