C语言中虚函数是如何实现多态性的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1656个文字,预计阅读时间需要7分钟。
在上一篇文章中,我们测试了C++中的虚函数实现机制。输出的内容非常奇特。实际上,这一切都发生在心理层面。本文将简单探讨C++中虚函数的实现机制。主要基于VS2013生成的32位代码进行分析。
缘起
在上一篇文章中,测试代码2 中的 pBaseA->AA(); 输出的内容很“奇怪”。其实,完全在情理之中。本文将简单探究一下 c++ 中的虚函数实现机制。本文主要基于 vs2013 生成的 32 位代码进行研究,相信其它编译器(比如,gcc)的实现大同小异。
先从对象大小开始
假设我们有如下代码,假设 int 占 4 字节,指针占 4 字节。
本文共计1656个文字,预计阅读时间需要7分钟。
在上一篇文章中,我们测试了C++中的虚函数实现机制。输出的内容非常奇特。实际上,这一切都发生在心理层面。本文将简单探讨C++中虚函数的实现机制。主要基于VS2013生成的32位代码进行分析。
缘起
在上一篇文章中,测试代码2 中的 pBaseA->AA(); 输出的内容很“奇怪”。其实,完全在情理之中。本文将简单探究一下 c++ 中的虚函数实现机制。本文主要基于 vs2013 生成的 32 位代码进行研究,相信其它编译器(比如,gcc)的实现大同小异。
先从对象大小开始
假设我们有如下代码,假设 int 占 4 字节,指针占 4 字节。

