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;
}

调试图:

相关推荐
合方圆~小文10 小时前
球型摄像机作为现代监控系统的核心设备
java·数据库·c++·人工智能
Rust语言中文社区10 小时前
【Rust日报】 丰田“先锋”选择了 Rust
开发语言·后端·rust
邹小邹-AI10 小时前
Rust + 前端:下一个十年的“王炸组合”
开发语言·前端·rust
ECT-OS-JiuHuaShan10 小时前
否定之否定的辩证法,谁会不承认?但又有多少人说的透?
开发语言·人工智能·数学建模·生活·学习方法·量子计算·拓扑学
東雪木10 小时前
变量与数据类型
java·开发语言
Lisonseekpan10 小时前
Java分词器深度评测与实战指南
java·开发语言·后端
百***354810 小时前
JavaScript在Node.js中的集群部署
开发语言·javascript·node.js
椰萝Yerosius11 小时前
[题解]2024CCPC郑州站——Z-order Curve
c++·算法
光影少年11 小时前
node.js和nest.js做智能体开发需要会哪些东西
开发语言·javascript·人工智能·node.js
xu_yule11 小时前
Linux_14(多线程)线程控制+C++多线程
java·开发语言·jvm