是C风格的阵列被认为是容器



是C风格数组,例如int holder[10]被视为容器吗?我问的原因是,如果它们是逻辑上的有意义

否,它们不是容器,因为在ISO C 标准中,单词"容器"仅正式用于标准库中的容器类。相比之下,阵列的整个部分都不使用"容器"一词。请参阅最新C 17草稿中的§11.3.4。

您可以调用数组为"复合类型","对象的序列"或"聚合",而不是"容器"。

它们不是严格意义上的容器。

c std::array是一个添加了本机数组丢失的几件事的容器(例如能够按值通过和返回数组)。

no,根据您的链接下的描述,如果不是。阅读您提供的链接,第一个单词:

一个容器是一个存储其他集合的持有物对象 对象(其元素)。它们被用作班级模板, 允许在支持元素的类型中具有巨大的灵活性。

容器管理其元素的存储空间并提供 成员功能可以直接或通过迭代器访问它们 (参考对象具有与指针相似的属性)。

容器复制编程中通常使用的结构: 动态数组(向量),队列(队列),堆栈(堆栈),堆 (Priority_queue),链接列表(列表),树(Set),关联数组 (地图)...

最新更新