C++进阶 --- 多继承中的虚表问题

多继承中的虚表问题

如下代码:

A类、B类都有虚函数,C类继承了A、B类,然后重写了A、B类的虚函数,且C类也有自己的虚函数

cpp 复制代码
class A
{
public:
    virtual void fA()
    {
        cout << "A::f()" << endl;
    }
};
class B
{
public:
    virtual void fB()
    {
        cout << "B::f()" << endl;
    }
};
class C :public B, public A
{
    void fA() {
        cout << "C::fA()" << endl;
    }
    void fB() {
        cout << "C::fB()" << endl;
    }
    virtual void fC() {
        cout << "C::fC()" << endl;
    }
    virtual void fD() {
        cout << "C::fD()" << endl;
    }
};
int main() {
    A a;
    B b;
    C c;
    cout << sizeof(c) << endl;  // 8 (32位下)
    return 0;
}

调试图:

相关推荐
机器视觉知识推荐、就业指导几秒前
C++设计模式:享元模式 (附文字处理系统中的字符对象案例)
c++
半盏茶香几秒前
在21世纪的我用C语言探寻世界本质 ——编译和链接(编译环境和运行环境)
c语言·开发语言·c++·算法
Evand J1 小时前
LOS/NLOS环境建模与三维TOA定位,MATLAB仿真程序,可自定义锚点数量和轨迹点长度
开发语言·matlab
LucianaiB1 小时前
探索CSDN博客数据:使用Python爬虫技术
开发语言·爬虫·python
Ronin3051 小时前
11.vector的介绍及模拟实现
开发语言·c++
✿ ༺ ོIT技术༻1 小时前
C++11:新特性&右值引用&移动语义
linux·数据结构·c++
字节高级特工1 小时前
【C++】深入剖析默认成员函数3:拷贝构造函数
c语言·c++
计算机学长大白2 小时前
C中设计不允许继承的类的实现方法是什么?
c语言·开发语言
PieroPc3 小时前
Python 写的 智慧记 进销存 辅助 程序 导入导出 excel 可打印
开发语言·python·excel
2401_857439695 小时前
SSM 架构下 Vue 电脑测评系统:为电脑性能评估赋能
开发语言·php