zoukankan      html  css  js  c++  java
  • 虚函数表和虚函数表指针

    /*
    (非继承的类)
    如果一个类中有虚函数,则该类就有一个虚函数表。虚函数表是属于类的,不属于类对象。在编译的时候确定,存放在只读数据段。
    每一个实例化的类对象都有一个虚函数表指针,指向类的虚函数表。虚函数表指针属于类对象。存放在堆上或者栈上。
    (继承的类)
    如果基类中有虚函数,派生类实现或没实现,都有虚函数表。基类的虚函数表和派生类的虚函数表不是同一个表。
    如果派生类没有重写基类的虚函数,则派生类的虚函数表和基类的虚函数表的内容是一样的。
    如果派生类重写了基类的虚函数,则在派生类的虚函数表中用的是派生类的函数。
    */
    
    /*
    (多继承)
    含有虚函数的基类有多少个,派生类就有多少个虚函数表指针,派生类有就有多少个虚函数表。
    派生类有的而基类没有的虚函数,添加在第一个虚函数表中。
    虚函数表的结果是* 表示还有下一个虚函数表
    虚函数表的结果是0 表示是最后一个虚函数表
    */
    
  • 相关阅读:
    线程原理 创建方式
    Chapter17 【异常、线程】
    驱动
    java中Super到底是什么意思
    Java 8后的首个长期支持版本Java 11
    OpenJDK和JDK区别
    异常
    模拟斗地主洗牌发牌
    Debug追踪
    Python 垃圾回收机制详细
  • 原文地址:https://www.cnblogs.com/smallredness/p/11022155.html
Copyright © 2011-2022 走看看