多态性与虚函数

12.1多态性的概念

多态性是面向对象程序设计的一个重要特征。多态性:向不同的对象发送同一消息,不同的对象在接受时会产生不同的行为。

例如函数的重载和运算符重载都是多态现象。

在c++中,多态性的表现形式之一是:具有不同功能的函数可以用同一函数名,这样就可以实现一个用一个函数名调用不同内容的函数。

从系统实现的角度来看,多态性分为两类:静态多态性和动态多态性。

静态多态性

通过函数重载完成,由函数重载和运算符重载(运算符重载实质上就是函数重载)形成的多态性属于静态多态性。

要求程序在编译时就知道调用函数的全部信息,因此,在程序编译时系统就可以决定要调用哪一个函数。静态多态性又称编译时的多态性。

动态多态性:

不在编译时确定调用的是哪个函数,而在程序运行过程中才动态地确定操作所针对的对象,他又称运行时的多态性。动态多态性是通过虚函数实现的。

猜你喜欢

转载自blog.csdn.net/xutian_curry/article/details/80482243