多态的对象模型

多态的对象模型

类的普通成员函数的地址是静态的,在编译阶段已指定。

如果基类中有虚函数,对象的内存模型中有一个虚函数表,表中存放了基类的函数名和地址。

如果派生类中重定义了基类的虚函数,创建派生类对象时,将用派生类的函数取代虚函数表中基类的函数。

C++中的多态分为两种:静态多态与动态多态。

静态多态:也成为编译时的多态;在编译时期就已经确定要执行了的函数地址了;主要有函数重载和函数模板。

动态多态:即动态绑定,在运行时才去确定对象类型和正确选择需要调用的函数,一般用于解决基类指针或引用派生类对象调用类中重写的方法(函数)时出现的问题。

原文链接: https://www.cnblogs.com/tgfoven/p/17133016.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    多态的对象模型

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/318892

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月24日 下午3:05
下一篇 2023年2月24日 下午3:05

相关推荐