Map 容器 学习总结(摘抄)
1.访问
下标访问"[]" 和at()方法两种方式,推荐第二种方法,它会进行边界检查。
对于map<string, int>map_str;其访问方式为:
map_str["firstel"];或者map_str.at("firstel"); // 返回键值firstel对应的值
int size( ) const; // 返回映射中的元素数量。// map.size();
bool empty( ) const; // 判断映射是否为空,true表示为空,false表示为非空
iterator find(const Key& key); // 返回映射中具有与指定键等效的键对应元素位置的迭代器。
注意:count方法:map_str.count("first") // 返回 map 中其键与指定了参数的键匹配的元素数量。如果 map 包含其排序键与参数键匹配的元素,则返回 1;如果 map 不包含带有匹配键的元素,则返回 0。
2.添加
对于map<string, int>map_str,有以下几种插入方式:
map_str.insert(make_pair("key", 23)); // 将键值对{"key", 23}插入到映射中
map_str.insert({"key", 23}); // 将键值对{"key", 23}插入到映射中
map_str.insert(map_str.begin()+2, make_pair("key", 23)); // 在第二个位置插入{"key", 23}键值对
3.删除
iterator erase(const_iterator Where); // 移除Where迭代器位置的键值对
int erase(const key_type& key); // 移除键值和key相等的位置的键值对
iterator erase( const_iterator First, const_iterator Last ); // 移除First和Last迭代器之间的键值对
void clear(); // 清除映射内的所有键值对元素
4.遍历
使用迭代器进行遍历,非常方便。
iterator begin( ); // 返回指向映射中第一个元素的迭代器
iterator end( ); // 返回指向映射中最后一个元素的迭代器
http://www.cnblogs.com/youyoui/p/5779995.html
https://baike.baidu.com/item/Map/5808503?fr=aladdin
http://blog.csdn.net/lijie45655/article/details/6647932