上一篇里我们学习了多态的基本概念,下面我们就来看看C++到底是如何实现多态的:
一、虚函数表
下面这个基类中只包含一个int型的成员变量,但利用sizeof求类的大小结果却是8
我们来看看b对象里都包含了什么:
通过观察测试我们发现:
除了_b成员,还多一个__vfptr放在对象的前面,对象中的这个指针我们叫做虚函数表指针(v代表virtual,f代表 functio
上一篇里我们学习了多态的基本概念,下面我们就来看看C++到底是如何实现多态的:
一、虚函数表
下面这个基类中只包含一个int型的成员变量,但利用sizeof求类的大小结果却是8
我们来看看b对象里都包含了什么:
通过观察测试我们发现:
除了_b成员,还多一个__vfptr放在对象的前面,对象中的这个指针我们叫做虚函数表指针(v代表virtual,f代表 functio