在 C++ 中,即使是一个空的类(即没有数据成员和成员函数的类),创建该类的对象时也不会占用0字节的大小。这是因为每个实例都需要有一个独一无二的地址,以便能够区分和使用它们。根据 C++ 标准,空类的对象至少需要占用1字节的大小。
例如,定义一个空类:
cppclass EmptyClass {};
然后,我们可以测试这个类的对象大小:
cpp#include <iostream> class EmptyClass {}; int main() { EmptyClass obj; std::cout << "Size of object is: " << sizeof(obj) << " bytes." << std::endl; return 0; }
这段代码的输出将会是:
shellSize of object is: 1 bytes.
这说明即使类没有任何数据成员或成员函数,每个对象仍然占用1字节的空间,这主要是为了确保每个对象都能在内存中有一个独特的地址。
2024年6月29日 12:07 回复