一、计算下面几个C++类的大小
class A {};: sizeof(A) = 1;
class A { virtual Fun(){} };: sizeof(A) = 4
class A { static int a; };: sizeof(A) = 1;
class A { int a; };: sizeof(A) = 4;
class A { static int a; int b; };: sizeof(A) = 4;
注意,static int内存分布在静态全局区,所以不占类的内存空间。
二、声明和定义的区别
1、编译器不会给声明分配内存,而定义会;
2、声明可以多次,但是定义只有一次。