思维导图
#include <iostream>
using namespace std;
class Animal
{
private:
string name;
public:
Animal(){}
Animal(string name):name(name)
{
//cout << "Animal;有参" << endl;
}
virtual void perform()
{
cout << "讲解员的名字是: " << name << endl;
}
};
class Sun:public Animal
{
private:
string lion;//狮子
string Elephant;//大象
string monkey;//猴子
public:
Sun()
{
}
Sun(string lion,string Elephant,string monkey,string name):Animal(name),lion(lion),Elephant(Elephant),monkey(monkey)
{
// cout << ""
}
void perform()
{
Animal::perform();
cout << "狮子的名字叫: " << lion << endl;
cout << "大象的名字叫: " << Elephant << endl;
cout << "猴子的名字叫: " << monkey << endl;
}
};
class Conservator:public Animal
{
private:
string name;
//int age;
//double height;
public:
Conservator()
{
}
Conservator(string name,string n):Animal(n),name(name)
{
}
void perform()
{
cout << "狮子的体重为200公斤,体长1,6米,是肉食性动物,比较凶残" << endl;
cout << "大象的体重为1吨,体长2米,是饲草性动物,比较温顺" << endl;
cout << "猴子的体重为30,身高1米,是杂食性动物" << endl;
}
};
int main()
{
Sun a1("小黄","大壮","小跳","刘晓颖");
Animal *p=&a1;
p->perform();
Conservator a2("","");
p=&a2;
p->perform();
return 0;
}