相关疑难解决方法(0)

标准容器的复杂性保证是什么?

显然;-)标准容器提供某种形式的保证.

什么类型的保证以及不同类型的容器之间究竟有什么区别?

从工作的SGI页(约STL)我想出了这一点:

Container Types:
================
Container:
    Forward Container
        Reverse Container
            Random Access Container
    Sequence
        Front Insert Sequence
        Back  Insert Sequence
    Associative Container
        Simple   Associative Container
        Pair     Associative Container
        Sorted   Associative Container
        Multiple Associative Container

Container Types mapped to Standard Containers
=============================================

std::vector:    Sequence    Back        Sequence                    Forward/Reverse/Random Container
std::deque:     Sequence    Front/Back  Sequence                    Forward/Reverse/Random Container
std::list:      Sequence    Front/Back  Sequence                    Forward/Reverse Container
std::set:       Sorted/Simple/Unique    Associative Container       Forward Container
std::map:       Sorted/Pair/Unique      Associative Container       Forward Container
std::multiset:  Sorted/Simple/Multiple  Associative Container …
Run Code Online (Sandbox Code Playgroud)

c++ big-o containers stl

153
推荐指数
2
解决办法
12万
查看次数

在基于范围的for循环中使用通用引用有什么好处?

const auto&如果我想执行只读操作就足够了.但是,我已经碰到了

for (auto&& e : v)  // v is non-const
Run Code Online (Sandbox Code Playgroud)

最近几次.这让我想知道:

是否有可能在一些不起眼的角落情况下,存在使用通用引用一些性能优势,相比auto&还是const auto&

(shared_ptr是一个晦涩角落案件的嫌疑人)


更新 我在收藏夹中找到的两个示例:

迭代基本类型时使用const引用的任何缺点?
我可以使用基于范围的for循环轻松迭代地图的值吗?

请专注于一个问题:我为什么要在使用自动&&范围为基础的for循环?

c++ performance for-loop move-semantics c++11

111
推荐指数
3
解决办法
2万
查看次数

标签 统计

c++ ×2

big-o ×1

c++11 ×1

containers ×1

for-loop ×1

move-semantics ×1

performance ×1

stl ×1