標(biāo)題: dynamic_cast再解 [打印本頁(yè)] 作者: heicc 時(shí)間: 2015-1-5 14:26 標(biāo)題: dynamic_cast再解 class A
{
public:
virtual void show() const
{
ShowMessage( "A" );
}
};
class B
{
public:
virtual void show() const
{
ShowMessage( "B" );
}
};
class AB : public A, public B
{
};
A* a = new AB;
B* b = dynamic_cast< B* >( a );
a->show();
b->show();
delete a;
深化驗(yàn)證:
class A
{
public:
virtual void show() const
{
ShowMessage( "A" );
}
};
class B
{
public:
virtual void show() const
{
ShowMessage( "B" );
}
};
class C : public A
{
public:
virtual void show() const
{
ShowMessage( "C" );
}
};
class AB : public B, public C
{
};
C* c = new AB;
A* a = dynamic_cast< A* >( c );
B* b = dynamic_cast< B* >( c );
a->show();
b->show();
delete c;