啥是c++容器容器是内置的么
2016-12-26
展开全部
这里通常指的是c++ STL标准模版库。
内部提供了大量的容器去管理对象组,还有标准的算法,这些容器增删改查等,时间复杂度都不尽一样,所以需要合适的容器。
这些都是c++标准的一部分。有的容器可能需要c11标准的支持,当然现在的编译器已经普遍支持了,你可以随意使用。
//顺序容器
#include<vector> 储存数组,查询和访问很快,添加删除则极慢。取代数组所用。
#include<list> 双向链表,添加和删除很快,查询和访问则很较慢。
#include<duque>双头队列,与queue相比vector更像。快速访问,以及在两端的快速插入以及删除。但中间的插入和删除很慢。
#include<array> 大小是固定的。
#include<forward_list> 单项链表,
//以下属于构建在顺序容器上的简单接口。容器适配器。
#include<queue> 先入先出,
#include<priority_queue> 每个元素都有个优先级,带有意外的队列,比如银行排队中有个vip.
#include<stack> 先入后出。
//其他容器
#include<bitset> 保存标志位,再也不需要按位运算符了。bitset<N> N表示多少位。
//关联容器,关联了键值对。(set中键就是值)
#include<set> 添加插入比vector快,比list慢。查找比list快,比vector慢。不许重复。
#include<mulitset>允许重复
#include<map>
#include<mulitmap>
//无序的关联容器/哈希表,(更贴切的应该叫做hash_map,第三方库一般这么叫)
#include<unordered_map>
#include<unordered_set>
#include<unordered_mulitmap>
#include<unordered_mulitset>
内部提供了大量的容器去管理对象组,还有标准的算法,这些容器增删改查等,时间复杂度都不尽一样,所以需要合适的容器。
这些都是c++标准的一部分。有的容器可能需要c11标准的支持,当然现在的编译器已经普遍支持了,你可以随意使用。
//顺序容器
#include<vector> 储存数组,查询和访问很快,添加删除则极慢。取代数组所用。
#include<list> 双向链表,添加和删除很快,查询和访问则很较慢。
#include<duque>双头队列,与queue相比vector更像。快速访问,以及在两端的快速插入以及删除。但中间的插入和删除很慢。
#include<array> 大小是固定的。
#include<forward_list> 单项链表,
//以下属于构建在顺序容器上的简单接口。容器适配器。
#include<queue> 先入先出,
#include<priority_queue> 每个元素都有个优先级,带有意外的队列,比如银行排队中有个vip.
#include<stack> 先入后出。
//其他容器
#include<bitset> 保存标志位,再也不需要按位运算符了。bitset<N> N表示多少位。
//关联容器,关联了键值对。(set中键就是值)
#include<set> 添加插入比vector快,比list慢。查找比list快,比vector慢。不许重复。
#include<mulitset>允许重复
#include<map>
#include<mulitmap>
//无序的关联容器/哈希表,(更贴切的应该叫做hash_map,第三方库一般这么叫)
#include<unordered_map>
#include<unordered_set>
#include<unordered_mulitmap>
#include<unordered_mulitset>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询