Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 一个班级有多大?_C++_Class - Fatal编程技术网

C++ 一个班级有多大?

C++ 一个班级有多大?,c++,class,C++,Class,可能重复: 1班和2班的大小是多少 在VC6中,我得到了两个1。有人能解释一下吗 任何类的大小都不能小于1,因为指针算术(特别是减法运算符)可以除以大小,而除零是未定义的。每个实例都必须有一个唯一的地址,这意味着每个实例至少要有一个字节的地址空间,因此最小大小也是一个 所以sizeof(Class1)==1因为这是内容所需要的,而sizeof(Class2)==1因为这是允许的最小值。@jleedev:我不同意,他的类不仅仅是一个空类,而且还有一个char c@thyrgyle:Close作为

可能重复:

1班和2班的大小是多少


在VC6中,我得到了两个1。有人能解释一下吗

任何类的大小都不能小于1,因为指针算术(特别是减法运算符)可以除以大小,而除零是未定义的。每个实例都必须有一个唯一的地址,这意味着每个实例至少要有一个字节的地址空间,因此最小大小也是一个


所以
sizeof(Class1)==1
因为这是内容所需要的,而
sizeof(Class2)==1
因为这是允许的最小值。

@jleedev:我不同意,他的类不仅仅是一个空类,而且还有一个
char c
@thyrgyle:Close作为副本并不意味着问题完全相同,这意味着理解现有的问题和答案也包括新的问题。这里就是这样。相同和重复之间区别的更清晰的例子:Q1:前五个素数是什么?问题2:第三个素数是什么?Q2可以作为Q1的复制品关闭。@Ben:这是一个很好的例子。我在偷它。
class Class1
{
char c;
};

class Class2
{
};