C++之多态性

@著作权归作者所有:来自CSDN博客作者大胡子的艾娃的原创作品,如需转载,请注明出处https://blog.csdn.net/qq_43148810,否则将追究法律责任。
如有错误的地方欢迎指正,谢谢!

一、概念
1、多态性是面向对象程序设计的重要特性之一。
2、多态是指同样的消息被不同类型的对象接收时导致完全不同的行为。
3、消息是指对类的成员函数的调用,不同的行为是指不同的实现,也就是调用了不同的函数。同一运算符操纵不同类型的操作数就是多态性的一种体现。
4、编译时的多态性与运行时的多态性
编译时的多态是在编译的过程中确定了同名操作的具体操作对象,运行时的多态则是在程序运行过程中才动态地确定操作所针对的具体对象。这种确定操作的具体对象的过程就是联编(binding),也称为绑定。在编译和连接时进行,称为静态联编。
在编译、连接过程中,系统可以根据类型匹配等特征确定程序中操作调用与执行该操作的代码的关系,即确定某一个同名标识到底是要调用哪一段程序代码,函数的重载(包括运算符重载)、函数模板的实例化均属于静态联编。
在运行时进行,称为动态联编。在编译、连接过程中无法解决的联编问题,要等到程序开始运行之后再来确定。动态联编支持的多态性成为运行时多态性(动态多态性),通过虚函数实现。
提示:具体实现请前往个人博客的C++专栏查看其它文章。

更多内容请关注个人博客:https://blog.csdn.net/qq_43148810

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章