首页 > C++编程 > C++空类sizeof字节数

C++空类sizeof字节数

C++中的空类所占多少个字节呢?一直以来都想到有这个问题,但是却忘了去看,今天一个学长说面试面到了,我想应该是4吧。我想到的是内存对齐。

但是试了一下,并不是4而是1.开始我以为是Dev C++的问题,因为那个GCC很老了,后来测试了一下发现 不是编译器的问题。

网上找了找相关资料,说是空类也可以实例化。既然要实例化,那么不同的不同的实例肯定是有区别的。为了便于区分这些实例,编译器会默认给他们分配一个字节的空间,便于区别。

那么,空类的子类呢?不难想象sizeof运算之后也是1.

//Coded by 代码疯子
//Blog: http://www.programlife.net/
#include <iostream>
using namespace std;
 
class B{};
 
class C : public B{};
 
int main()
{
	cout << "sizeof(B): " << sizeof(B) << endl;
	cout << "sizeof(B): " << sizeof(C) << endl;
 
	return 0;
}

上面的程序运行后输出两个1.


觉得文章还不错?点击此处对作者进行打赏!


本文地址: 程序人生 >> C++空类sizeof字节数
作者:代码疯子(Wins0n) 本站内容如无声明均属原创,转载请保留作者信息与原文链接,谢谢!


更多



分类: C++编程 标签: , ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.