所有关联容器头提供一个insert,用以插入元素(键值对)
支持双向迭代器。
Map API
map 的底层元素时指:(key,映射值)组成的pair对 映射值可以是任意的合法类型
其类型在map<key_type,X>::value_type 中定义
若typedef typename map<key_type,T>::value_type VALUE_TYPE;
构造函数:
std::map<key_type,T>() 默认构造
增加元素:
.insert(VALUE_TYPE(key,映射值))
.insert(std::pair<key_type,T>(key,映射值))
.insert(std::make_pair<key_type,T>(key,映射值))
删除元素
.erase(指定迭代子位置的键值对)
改
排
查找元素:
.find(key)
按关键字查找,找到返回key所在位置‘元素’(键值对)的迭代子。否则返回.end()
是否支持随机存取?
是
T& operator[](const KeyType&index)
const T& operator[](const KeyType&index)const;
对于map,operator[]的过程如下:
当index对应的键不存在时,则生产一个元素(键值对)用于存放
元素的值(value==second)。
当key标识的元素存在时,则可以对该元素进行存取。
支持双向迭代器。
Map API
map 的底层元素时指:(key,映射值)组成的pair对 映射值可以是任意的合法类型
其类型在map<key_type,X>::value_type 中定义
若typedef typename map<key_type,T>::value_type VALUE_TYPE;
构造函数:
std::map<key_type,T>() 默认构造
增加元素:
.insert(VALUE_TYPE(key,映射值))
.insert(std::pair<key_type,T>(key,映射值))
.insert(std::make_pair<key_type,T>(key,映射值))
删除元素
.erase(指定迭代子位置的键值对)
改
排
查找元素:
.find(key)
按关键字查找,找到返回key所在位置‘元素’(键值对)的迭代子。否则返回.end()
是否支持随机存取?
是
T& operator[](const KeyType&index)
const T& operator[](const KeyType&index)const;
对于map,operator[]的过程如下:
当index对应的键不存在时,则生产一个元素(键值对)用于存放
元素的值(value==second)。
当key标识的元素存在时,则可以对该元素进行存取。
来源:oschina
链接:https://my.oschina.net/u/2467198/blog/624752