忧伤寒风

文章
6
资源
0
加入时间
3年1月11天

关于empty class的大小

1,首先简要说明下为什么empty class的大小不是0?这是因为c++标准有个规定,操作符new object必须返回一个唯一的指针指向一个对象,如果empty大小为0,无疑底层的操作将是malloc(0)等等之类,则返回NULL或出错,因此设定其为1。实际应用中,如果一个empty作为一个子类的基类或虚基类,编译器都会作一些特殊处理,去掉这个额外的1。[code="c++"]...