gpt4 book ai didi

c++ - 一个对象什么时候可以有一个但不是两个非零大小,一个或多个字节的存储空间?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:26:33 24 4
gpt4 key购买 nike

C++ 14 intro.cpp 状态:

a most derived object shall have a non-zero size and shall occupy one or more bytes of storage

为什么要声明

non-zero size

one or more bytes of storage

什么时候可以有一个没有另一个?

最佳答案

这两个部分实际上在说不同的事情。

a most derived object shall have a non-zero size

这意味着使用对象的 sizeof 将返回一个非零大小。

a most derived object ... shall occupy one or more bytes of storage

这意味着该对象占用了一些字节(一个或多个)的内存。

如果第二条语句不存在,则可能意味着 sizeof 将报告非零大小,但该对象实际上可能不使用任何内存。

如果没有第一条语句,它可能意味着 sizeof 可以返回零,但该对象仍会占用内存空间。

两者都是必需的,并且彼此正交。

关于c++ - 一个对象什么时候可以有一个但不是两个非零大小,一个或多个字节的存储空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45125717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com