【问题标题】:What is the complexity of calling .end() on a vector?在向量上调用 .end() 的复杂性是什么?
【发布时间】:2013-07-14 15:25:31
【问题描述】:

http://en.cppreference.com/w/cpp/container/vector/end 表示复杂性是恒定的。

我在标准中找不到任何提及。有人可以指点我到适当的部分吗?还是仅仅遵循 std::vector 的其他性能要求?

【问题讨论】:

    标签: c++ stl stdvector


    【解决方案1】:

    复杂性确实是恒定的。这在 [container.requirements.general] 中的表 96 或 C++11 标准中的 23.2.1 通用容器要求表 65 中进行了说明— 容器要求,或 C++03 标准中的 [lib.container.requirements]

    【讨论】:

    • [lib.container.requirements],以防 OP 正在读取具有不同部分编号的标准版本;)
    • @OliCharlesworth 奇怪,我的版本没有 lib
    • 有趣!我的假设是 [] 部分的命名在标准的修订版之间是明确的。我不再持有那个假设......
    • @OliCharlesworth 我也是。不过,我没有官方的 C++11 标准,只是在批准之前发布的最后一个草案。无论如何,我添加了 C++03 引用。
    猜你喜欢
    • 2015-11-17
    • 2014-08-06
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-26
    相关资源
    最近更新 更多