news 2026/6/22 4:33:51

抽象类反汇编

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
抽象类反汇编

抽象类反汇编

#include<stdio.h>classAbstractBase{public:AbstractBase(){printf("AbstractBase()");}virtualvoidshow()=0;// 定义纯虚函数};classVirtualChild:publicAbstractBase{// 定义继承抽象类的子类public:virtualvoidshow(){// 实现纯虚函数printf("抽象类分析\n");}};intmain(intargc,char*argv[]){VirtualChild obj;obj.show();return0;}

对于纯虚函数,我们来看看编译器是如何实现的。先反汇编main:

正常调用对象的构造函数,我们反汇编其构造函数:

可以看到先调用了抽象类的构造函数,我们看看抽象类的构造函数中是如何设置虚表的:

查看父类虚表:

虚表中只有一项,我们反汇编这个函数:

在抽象类AbstractBase的虚表信息中,因为纯虚函数没有实现代码,所以没有首地址。编译器为了防止误调用纯虚函数,将虚表中保存的纯虚函数的首地址项替换成函数__purecall,用于结束程序。当抽象类中定义了多个纯虚函数时,虚表中将保存相同的函数指针。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/12 18:21:57

达梦(DM) vs Vastbase 完整对比报告

目录 达梦(DM) vs Vastbase 完整对比报告执行摘要一、环境配置对比二、架构对比2.1 容器架构2.2 集群模式对比2.3 架构图示 三、高可用(HA)对比3.1 HA机制对比3.2 服务发现配置 四、性能配置对比4.1 内存配置4.2 连接配置4.3 性能特性 五、数据类型对比5.1 标准SQL类型5.2 特色…

作者头像 李华
网站建设 2026/6/17 1:18:15

从 IoU 到 MPDIoU:YOLOv8 边界框回归损失优化与 Inner‑MPDIoU 实战全解析

购买即可解锁300+YOLO优化文章,并且还有海量深度学习复现项目,价格仅需两杯奶茶的钱,别人有的本专栏也有! 文章目录 YOLOv8损失函数革新:MPDIoU与InnerMPDIoU完整实战指南 MPDIoU核心技术原理深度解析 点距离最小化理论 多尺度自适应权重机制 完整代码实现方案 MPDIoU损失…

作者头像 李华
网站建设 2026/6/13 14:02:07

生产线自动装箱的plc控制程序(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

生产线自动装箱的plc控制程序(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09;_文章底部可以扫码CPU型号:S7-1200 博图 包含HMI触摸屏仿真&#xff0c;配套报告说明书控制要求 (1)按下控制装置启动按钮后&#xff0c;传送带B先启动运行&#xff0…

作者头像 李华
网站建设 2026/6/19 0:16:28

交通灯plc s7-1200博图(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

交通灯plc s7-1200博图(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09;_文章底部可以扫码用于课程设计等含报告 程序仿真全套 南北方向绿灯和东西方向绿灯不能同时亮。如果同时亮&#xff0c;则应自动立即关闭信号灯系统&#xff0c;并立即发出报…

作者头像 李华
网站建设 2026/6/14 0:41:41

PLC皮带运输机运输系统仿真(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

PLC皮带运输机运输系统仿真(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09;_文章底部可以扫码三菱PLC编程软件GXWorks2/3与触摸屏组态软件GT Designer3仿真 1.10表软元件说明 2.PLC接线图主电路图流程图 3.梯形图仿真指令表 4.设计报告(Word文件…

作者头像 李华
网站建设 2026/6/15 20:20:55

【RL】ROLL中各DP数据同步

好的&#xff0c;我们来详细解释一下 MegatronInferStrategy 类中的 get_data_input 函数&#xff0c;并举例说明其在分布式环境下的工作方式以及 batch 的形状。 一、核心目标 (Core Goal) get_data_input 函数的核心目标是&#xff1a;在复杂的分布式并行环境中&#xff0c…

作者头像 李华