对象的类型:
在这里先来看一下在继承体系中搞的人晕头转向的几个术语:
下面让我们一起进入多态的世界
多态(polymorphism)一词最初来源于希腊语polumorphos,含义是具有多种形式或形态的情形。
我们把具有继承关系的多个类型称为多态类型。
引用或指针的静态类型与动态类型不同这一事实正是c++语言支持多态性的根本所在。
1、多态分为静态多态和动态多态。
静态多态和动态多态还有下面的两种名字,其实意思都一样,但是为了以防我们以后见到这样的名字而不知所措,还是可以了解一下哒(笑脸):
(静态决议和动态决议)
(静态联编和动态联编)
静态多态:
编译器在编译期间完成,编译器根据实参的类型(可能会发生隐式类型转化),可推断出要调用哪个函数,如果没有对应的函数,则会出现编译错误。
动态多态:
在程序执行期间判断所引用对象的实际类型,根据实际类型调用相应的函数。动态多态的绑定:
①基类中必须要有虚函