专栏名称: 嵌入式微处理器
关注这个时代最火的嵌入式微处理器,你想知道的都在这里。
今天看啥  ›  专栏  ›  嵌入式微处理器

从内存的角度,深入探究C++虚函数表

嵌入式微处理器  · 公众号  ·  · 2024-10-29 12:00
    

文章预览

在正式讨论虚函数之前,我们需要明确c++的设计思想—— 零成本抽象。 对于下面的这个类: class   A  { public :      int  x; }; 这个类的大小为4,也就是一个int的大小。 我们在跑这个类,等同于在跑一个单独的int。 class   A  { public :      int  x; }; int   main () {      cout       A a;      int * p = ( int *)     *p =  23333 ;      cout        return   0 ; } 输出: 4 23333 实际上,在汇编的角度上,更能看出来。 所以,类这个概念,只存在于编译时期。 也就是说,我们可以写出修改类中的私有变量的代码(因为私有这个东西只在编译时期中存在)。 class   A  { private :      int  x; public :      int   getx ()   {  return  x; } }; int   main () {      cout       A a;      int * p = ( int *)     *p =  114514 ;      cout        return   0 ; } 输出: 4 114514 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览