存档

文章标签 ‘面试’

再谈面试中的sizeof

2010年11月14日 4 条评论

上面两篇文章谈到了sizeof对C++空类的相关知识点,让我想起了以前做过的一道题目,也是考sizeof的。题目如下:

//Provided by 代码疯子
//Blog: http://www.programlife.net/
#include <stdio.h>
 
int main()
{
int i = 0;
printf("%d %d\n", i++, sizeof(i++));
[......]

继续阅读

分类: C++编程 标签: , ,

C++空类sizeof字节数(二)

2010年11月14日 3 条评论

下一个面试题:说明输出结果,并解释。

#include <iostream>
using namespace std;
 
class A
{
private:
char array[0];
};
 
class B{};
 
class C : public B{};
 
int main()
{
cout << &quot[......]

继续阅读

分类: C++编程 标签: , ,

C++空类sizeof字节数

2010年11月14日 没有评论

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

但是试了一下,并不是4而是1.开始我以为是Dev C++的问题,因为那个GCC很老了,后来测试了一下发现 不是编译器的问题。
网上找了找相关资料,说是空类也可以实例化。既然要实例化,那么不同的不同的实例肯定是有区别的。为了便于区分这些实例,编译器会默认给他们分配一个字节的空间,便于区别。
那么,空类的子类呢?不难想象sizeof运算之后也是1.

//Co[......]

继续阅读

分类: C++编程 标签: , ,