对于C++中空类的认识

C++的空类是指设计时不包含任何数据成员和成员函数的类。

实际上,对于一个空类,系统会自动添加以下默认的成员函数:

1.默认构造函数

2.默认拷贝构造函数

3.默认析构函数

4.赋值“=”运算符

5.取地址运算符

6.取地址运算符const

对于一个空类A,sizeof(A)的值为1,这是因为实例化的原因,空类同样可以被实例化,每个实例在内存中都应该有唯一的地址,为了达到这个目的,编译器会给一个空类插入一个字节,这样空类在实例化后在内存中得到唯一的地址,所以空类所占的内存大小是1个字节。

 

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注