map中所有元素都是pair
pair中第一个元素为key(键值),起到索引作用,第二个元素为value(实值)
所有元素都会根据元素的键值自动排序
map/multimap属于关联式容器,底层结构是用二叉树实现
优点:可以根据key值快速找到value值
map和multimap区别:
map不允许容器中有重复key值元素
multimap允许容器中有重复key值元素
map构造函数:
map<T1,T2> mp;//map默认构造函数
map(const map& mp);//拷贝构造函数
赋值:
map& operator=(const map& mp);//重载等号操作符
两种对pair对数的赋值操作:
size()函数:返回容器中元素的数目
empty()函数:判断容器是否为空
swap()函数:交换两个集合容器
插入和删除方式:
查找和统计:
如果用[]插入的键与前面已插入的键有重复的,则后插入的会覆盖以前插入的,但是如果后面用insert插入的键与前面有相同的,则不会覆盖,只会插入失败。
map容器默认排序规则按key从小到大排列。
自定义类型数据: