class Base { public: virtual void vmf() { ... } };
class Derived : public Base { public: virtual void vmf() { ... } };
Base* p = new Base(); p->vmf(); // 這里調(diào)用Base::vmf p = new Derived(); p->vmf(); // 這里調(diào)用 // Derived::vmf ... 請注重代碼中突出注釋的兩行,雖然其表面語法完全相同,但是卻分別調(diào)用了不同的函數(shù)實現(xiàn)。所謂的“多態(tài)”即就此而言。這些知識是每一個C++開發(fā)者都熟知的。