多态polymorphism:以一个public base class的指针或者reference,寻址出一个derived class object。
多态只能通过base class的指针或者引用来实现。
现有基类A,其派生类B
A *pa=B;
A &ra=B;
A a=B; //将B截断,只保留A的部分。 其中并不能知道pa和ra具体是什么类型,可能是A或者A的派生类,用其调用函数可能会产生多态。而a的类型一定为A,不会产生多态。
利用pa和ra调用函数可能会调用到B内重写的虚函数,而利用a只能调用到A内的函数。