一个多态的例子:

#include<iostream>
#include<vector>
#include<string>
#include<stdlib.h>
#include<set>
#include<map>
using namespace std;
#define MAX 999999
class takebus
{
public:
void takebus_to_subway()
{
cout<<"to sbway:take 438"<<endl;
}
void takebus_to_station()
{
cout<<"to_station:take K1"<<endl;
}
};
class BUS
{
public:
virtual void Takebus_to_somewhere(takebus &tb)=0;
};
class subway:public BUS
{
public:
virtual void Takebus_to_somewhere(takebus & tb)
{
tb.takebus_to_subway();
}
};
class station:public BUS
{
public:
virtual void Takebus_to_somewhere(takebus & tb)
{
tb.takebus_to_station();
}
};
int main()
{
takebus tb;
BUS *b=NULL;
b=new subway;
//b=new station;
b->Takebus_to_somewhere(tb);
delete b;
return 0;
}
参考资料:https://blog.csdn.net/qq_39412582/article/details/81628254
来源:https://www.cnblogs.com/dzzy/p/12563618.html
