gpt4 book ai didi

c++ - 空基类优化

转载 作者:可可西里 更新时间:2023-11-01 16:27:59 24 4
gpt4 key购买 nike

引用 C++ 标准 §1.8 中的两句:

An object is a region of storage.

Base class subobjects may have zero size.

我认为存储区域的大小不能为零。这意味着一些基类子对象实际上并不是对象。这些说法如何共存?

最佳答案

关于“区域”定义的哲学争论是不必要的。

1.8/5 说,“除非它是位域,否则派生对象的大小不应为零……基类子对象的大小可能为零”。

因此标准非常清楚哪些对象(以及哪些“存储区域”)可以具有零大小。如果您不同意“区域”在英语中的含义是一回事,您可以指责作者的(与编程无关的)文学技巧。就此而言,您可以批评他们的诗意技巧 (14.7.3/7),但这里关于类类型对象大小的标准非常清楚。

阅读标准的实用方法是,给定一个词的两个合理解释,选择一个不与标准同一部分中的另一个句子直接矛盾的解释。不要选择与您个人对该词的首选用法,甚至是最常见用法更接近的词。

关于c++ - 空基类优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2826589/

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