dynamic_cast后有括號(hào)
void doSomething(Movable *obj)
{
obj->move();
if(typeid(*obj) == typeid(Bus))
{
Bus *bus = dynamic_cast<Bus*>(obj);
bus->carry();
}
if(typeid(*obj) == typeid(Tank))
{
Tank *tank = dynamic_cast<Tank*>(obj);
tank->fire();
}
}
void doSomething(Movable *obj)
{
obj->move();
if(typeid(*obj) == typeid(Bus))
{
Bus *bus = dynamic_cast<Bus*>(obj);
bus->carry();
}
if(typeid(*obj) == typeid(Tank))
{
Tank *tank = dynamic_cast<Tank*>(obj);
tank->fire();
}
}
2016-11-03
如果說A是錯(cuò)的,那么只能這樣解釋:動(dòng)態(tài)不僅包括動(dòng)態(tài)多態(tài),還包括靜態(tài)多態(tài),即編譯時(shí)的多態(tài)。
2016-10-26