- 博客(2)
- 收藏
- 关注
原创 虚表(探讨多态的原理)菱形虚拟继承
多态(Polymorphism)按字面的意思就是"多种状态"。在面向对象语言中,接口的多种不同的实现方式即为多态。引用Charlie Calverts对多态的描述--多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作(摘自"Delphi4 编程技术内幕")。简单的说,就是一句话:允许将子类类型的指针赋值给父
2017-02-16 00:32:31 261
原创 研究虚表(探索多态的原理)和菱形虚拟继承
多态—— 一个接口 多种形态, 编译器在执行过程中遇到virtual关键字的时候,将自动安装动态联编需要的机制,首先为这些包含virtual函数的类(注意不是类的实例)--即使是祖先类包含虚函数而本身没有--建立一张虚拟函数表VTABLE。在这些虚拟函数表中,编译器将依次按照函数声明次序放置类的特定虚函数的地址。同时在每个带有虚函数的类中放置一个称之为vpointer的指针,简称vpt
2017-02-15 21:38:15 349
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人