实现多态——虚函数的对象模型

多态的概念:(一个接口,多种方法)
     多态是面向对象语言的三大特性(封装,继承,多态)之一,多态是指同一个实体具有多种形态。C++中的多态具体体现在编译和运行时期,编译时期就确定对象使用的形式(重载)我们成为编译时多态,运行时期才能确定 具体引用的对象使用的形式我们称为动态多态。同一操作作用于不同的对象,可以有不同的解释,产生不同的结果。多态在继承模型下实现,在运行时,可以通过指向基类(父类)的指针,来调用派生类的方法(父类指针可以指向父类对象和子类对象)。

隐藏:
     (1)指派生类的函数屏蔽了与其同名的基类函数(发生在不同的作用范围),注意只要是同名的函数,不管参数列表是否相同,基类函数都会被隐藏。     
     (2)隐藏时,访问父类则调用父类的方法,访问子类则调用子类的方法
实现多态——虚函数的对象模型
继承是子类使用父类的方法,多态是父类使用子类的方法
     多态通过虚函数来实现,需要实现多态的成员函数前都要加上virtual的关键字。
实现多态——虚函数的对象模型
使用以上这种方法可以实现多态。

多重继承的虚函数对象模型
实现多态——虚函数的对象模型