代码:
#include <iostream>
using namespace std;
class zoo
{
string name;
public:
zoo() {}
zoo(string name):name(name)
{}
virtual void perform()=0;
};
class ele:public zoo
{
string elep;
public:
ele() {}
void perform()
{
cout << "给大家伙喷个水" <<endl;
}
};
class monk:public zoo
{
public:
monk() {}
void perform()
{
cout << "给大家伙吃个香蕉" <<endl;
}
};
class tiger:public zoo
{
public:
tiger() {}
void perform()
{
cout << "给大家伙表演个吃人" <<endl;
}
};
int main()
{
ele e;
tiger t;
monk m;
zoo *an ;
string nam;
while(1)
{
cout << "enter anmial: " ;
cin >> nam;
if(nam == "ele")
an = &e;
else if(nam == "tiger")
an = &t;
else if(nam == "monkey")
an = &m;
else if(nam == "quit")
{
cout <<"no animals" <<endl;
break;
}
an->perform();
}
return 0;
}
思维导图: