STL关联式容器之映射表——map
来源:互联网 发布:李炎恢php第一季讲义 编辑:程序博客网 时间:2024/05/17 23:54
1、map的特性
和set一样,map的元素都会自动根据键值进行自动排列,map的所有元素都是pair类型,同时拥有实值和键值,pair的第一个元素为键值,第二个元素为实值,且map不允许两个键值相同的元素。
在学习map之前,我们先学习一下pair。
<stl_pair.h>
template<class T1, class T2>
struct pair{
typedef T1 first_type;
typedef T2 second_type;
T1 first;
T2 second;
pair():firs(T1()),second(T2()){}//构造函数
pair(const T1& a, const T2& b): first(a), second(b){}//构造函数
};
2、我们可以通过map的迭代器改变map的元素内容吗?
如果要改变键值,是不行的,但是如果要改变实值,是可以的。因此,map的迭代器既不是const iterator,也不是mutable iterator。
3、对容易犯错函数的说明
(1)首先是插入函数insert()
pair<iterator,bool> insert(const value_type& x){
return t.insert_unique(x);
}
插入函数的返回类型为pair类型,其中第二个代表插入是否成功,成功的话,前者将指向被插入的那个元素。
(2)下标操作符
下标操作符有两种用法,可能作为左值运用(内容可以被修改),也可能作为右值(内容不可修改)。如
map<string, int> simap;
simap[string("1")]=1;//左值,可以修改
int number=simap[string("1")];
4、multiset和multimap
multiset和multimap分别从set和map衍生而来,不同的是他们可以拥有相同的元素。
他们的底层插入函数是insert_equal而非insert_unique()。
- STL关联式容器之映射表——map
- STL关联容器—map
- 【STL】关联容器 — map
- STL源码剖析——关联容器之map
- stl之关联容器——set,map,hashtable
- STL之MAP关联容器
- STL关联容器之Map
- STL 之 map 关联容器
- STL关联容器之map
- STL关联式容器——set和map
- STL容器-关联式容器map/multimap
- 【STL】容器 > 关联式容器 > map
- STL之关联容器的映射底层
- STL之map/multimap关联式容器学习
- C++STL之关联容器【map】【set】
- STL::map关联容器
- STL — 关联容器
- STL容器--关联容器map
- PCAN linux 下ROS匹配
- uC/OS-II中断及时钟节拍
- IOS Dev Intro - Thread Sync
- 兼容各种版本浏览器网页视频播放制作路程
- 二叉树的最小深度
- STL关联式容器之映射表——map
- C++中各大库扥介绍
- [转]如何恢复SVN中已删除文件或文件夹
- 数据库——事务
- μC/OS-Ⅱ之任务控制块、任务就绪表
- 在leangoo里怎么创建看板,更改看板名称?
- setvbuf()
- C#基础学习--方法参数的种类,值参数,引用参数(ref),输出参数(out),数组参数(params)
- IOS Dev Intro - Dispatch Sync