编译器优化sizeof,private继承访问权限更改

This commit is contained in:
CYP12138
2022-03-16 18:05:59 +08:00
parent 696b01a42c
commit c0d76f164d
3 changed files with 57 additions and 10 deletions

View File

@@ -25,7 +25,14 @@ class A
* int b
* short a
* long b
* 根据字节对齐4+4=8+8+8=24
* 根据字节对齐4+4+8+8=24
*
* 或编译器优化
* char a
* short a
* int b
* long b
* 根据字节对齐2+2+4+8=16
*/
class B:A
{
@@ -33,6 +40,9 @@ class B:A
short a;
long b;
};
/**
* 把A的成员拆开看char为1int为4所以是1+3+4+1+3=12为字节补齐
*/
class C
{
A a;
@@ -51,7 +61,7 @@ class C1:public A
int main()
{
cout<<sizeof(A)<<endl; // 8
cout<<sizeof(B)<<endl; // 24
cout<<sizeof(B)<<endl; // 16
cout<<sizeof(C)<<endl; // 12
/**