TOP

随笔分类 -  C++

C++相关
摘要:本文首先以简单虚拟继承为例,向读者展示了在虚继承条件下,即使没有虚函数,也会存在虚函数表,用来记录 this 指针调整、动态类型转换等所需的信息。接下来,以菱形继承为例,详细介绍了VTT以及的construction vtable,深入探讨了该结构存在的原因以及在对象构造/析构中的作用。最后,详细讲解了虚析构函数、构造函数、 vbase_offset 和 vcall_offset 等与虚继承相关的虚表条目。 阅读全文
posted @ 2025-06-02 18:15 同勉共进 阅读(327) 评论(0) 推荐(1)
摘要:本系列文章,旨在探究C++虚函数表中除函数地址以外的条目,以及这些条目的设计意图和作用,并介绍与此相关的C++类对象内存布局,最后将两者用图解的形式结合起来,给读者带来全局性的视角。让我们从一个简单的类出发,开启我们的探索之旅。 阅读全文
posted @ 2025-03-28 08:38 同勉共进 阅读(519) 评论(1) 推荐(1)
摘要:本文从C/C++编译机制以及C++模板实现原理的角度出发,通过实例分析,解释了为什么C++一般将模板实现放在头文件中。同时给出了不将模板实现放在头文件中的解决方案。 阅读全文
posted @ 2022-05-31 20:53 同勉共进 阅读(8101) 评论(3) 推荐(16)