c/c++语言开发共享c++中数据大小的计算

c++中数据大小的计算:以前经常记得struct是有字节对其的, 那么类有没有字节对其呢? class a{ public: virtual ~a(){} virtual void f

c++中数据大小的计算:以前经常记得struct是有字节对其的, 那么类有没有字节对其呢?

  class a{  public:  virtual ~a(){}    virtual void fun(){  printf("func an");  }  private:  char a;  int b;  char c;  };    printf("sizeof(a)=%d", sizeof(a));

打印的结果:sizeof(a)=16

分析: 根据字节对齐我们知道 a后面会空三个字节, 根据补齐我们知道 c后面会补三个字节 共12字节,类中有virtual 是虚函数, 故类需要保存一个虚指针为四个字节 共16字节。

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/606716.html

(0)
上一篇 2021年5月14日
下一篇 2021年5月14日

精彩推荐