浅谈C++容器(六)
来源:互联网 发布:mac wifi连上无法上网 编辑:程序博客网 时间:2024/06/05 03:22
文章转载自blog.csdn.net/acosoft
文章主要从宏观层面对容器进行了分类讲解,大牛请直接无视本文。
容器适配器
STL 中包含三种适配器:栈stack 、队列queue 和优先级priority_queue 。
适配器是容器的接口,它本身不能直接保存元素,它保存元素的机制是调用另一种顺序容器去实现,即可以把适配器看作“它保存一个容器,这个容器再保存所有元素”。
STL 中提供的三种适配器可以由某一种顺序容器去实现。默认下stack 和queue 基于deque 容器实现,priority_queue 则基于vector 容器实现。当然在创建一个适配器时也可以指定具体的实现容器,创建适配器时在第二个参数上指定具体的顺序容器可以覆盖适配器的默认实现。
由于适配器的特点,一个适配器不是可以由任一个顺序容器都可以实现的。
栈stack 的特点是后进先出,所以它关联的基本容器可以是任意一种顺序容器,因为这些容器类型结构都可以提供栈的操作有求,它们都提供了push_back 、pop_back 和back 操作;
队列queue 的特点是先进先出,适配器要求其关联的基础容器必须提供pop_front 操作,因此其不能建立在vector 容器上;
优先级队列priority_queue 适配器要求提供随机访问功能,因此不能建立在list 容器上。
0 0
- 浅谈C++容器(六)
- 浅谈C++容器(六)
- 浅谈C++容器(六) .
- 浅谈C++容器(六) .
- 浅谈C++容器(六)
- 浅谈C++容器(六)
- 浅谈C++容器(六)
- 浅谈SVM(六)
- 浅谈C++容器(一)
- 浅谈C++容器(二)
- 浅谈C++容器( 三)
- 浅谈C++容器(四)
- 浅谈C++容器(五)
- 浅谈C++容器(一)
- 浅谈C++容器(二)
- 浅谈C++容器(三)
- 浅谈C++容器(四)
- 浅谈C++容器(五)
- mybatis简单的使用
- 安卓eclipse工程移植备忘
- c++变长数组
- 爱上了我的司机 (4)
- 8-2. 求矩阵的局部极大值(15)
- 浅谈C++容器(六)
- OCP 1Z0 053 171
- 使用java和mybatis时遇到的数据无法插入问题
- 什么是Nib文件
- linux实用命令(1)
- ExtJS学习笔记2:响应事件、使用AJAX加载数据
- JVM的优化
- C++中常变量与符号变量的区别以及“\”的用途
- java中map集合嵌套形式简单示例