V K*_*V K 5 c++ containers stl
C++ 中的序列容器和容器适配器有什么区别?
这里我的意思是序列容器作为向量,双端队列,列表,而容器适配器作为堆栈,队列,priority_queue。我们什么时候更喜欢序列容器和容器适配器?
您可以将序列容器视为“从头开始构建”的容器。它们使用不同的结构来保存数据,并具有不同的算法时间来插入、删除和检索元素。
你可以在这里找到很多关于容器算法时间的信息
容器适配器是在序列容器上添加的行为,使它们尊重不同的范例。添加的行为可以是更严格的行为(堆栈只允许您在其上弹出/推送项目,不允许随机插入)。它们是其他类型的容器,与现有的容器相比,不需要新的存储行为。例如,可以在向量上构建堆栈。然后,它将使用向量的数据结构,但限制对某些函数的使用以模拟堆栈。
最重要的是确保您使用正确的容器来满足您的需求。更严格的容器将帮助您防止数据的误用,并且了解数据的使用情况将帮助您选择好的容器以获得最佳性能。
vector
许多专家(Scott Meyer、Bjarne Stroustrup)建议默认使用deque
. 我强烈建议您选择最适合您需要的容器。
归档时间: |
|
查看次数: |
4178 次 |
最近记录: |