《 effective c++ 》
空类是没有数据成员,没有函数的类,例如 class Empty { };
1. 空类或者空类对象的大小(无继承情况下):编译器会在空类中安插一个char,使得这个空类的两个objects得以在内存中配置独一无二的地址。只有当一个类为空的时候,编译器才会向该类中加入这样一个char!
2. 空类或者空类对象的大小(有继承但无虚继承情况下):继承的基类都是空类,大小是1,不管有多少个父类。
3. 空类或者空类对象的大小(单一虚继承情况下):对每一个虚继承基类,都有一个虚基类索引(或者偏移量、指针),占4字节
定义一个空的C++类,例如
class Empty