首页 > 代码库 > GeekBand第四周学习笔记
GeekBand第四周学习笔记
vptr&vtbl
virtual point
每一个带有虚函数的对象都会包涵一个指向虚函数表的指针,子类会继承父类的虚函数,所以子类中也会有虚函数表
virtual table
虚函数表拥有一个或复数个虚函数指针,每一个虚函数指针指向实际函数地址,当子类重写了父类的虚函数,子类虚函数表中指向父类此虚函数的指针将会更改指向重写后函数的地址。
class A{ public: virtual void vfunc1(); virtual void vfunc2(); void func1(); void func2(); private: int m_data1, m_data2; }; class B :public A{ public: virtual void vfunc1(); void func2(); private: int m_data3; }; class C :public B{ public: virtual void vfunc1(); void func2(); private: int m_data1, m_data4; };
this point
GeekBand第四周学习笔记
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。