map使用

来源:互联网 发布:独木成林 未卖网前软件 编辑:程序博客网 时间:2024/04/29 18:43

BaseInfo:

(1)键值唯一约束:必须定义<比较操作

(2)map定义的类型:

map<k,v>::key_type   键的类型

map<k,v>::mapped_type 值的类型

map<k,v>::value_type  pair类型

(一)初始化

1. map<k,v>m1;

2. map<k,v>m2(m1);

3. map<k,v>m3(b,e);

(二)增

1. m.insert(pair);返回一个pair对象,第一个参数为迭代器,第二个为是否插入成功

2.m.insert(b,e);返回void

3.m.insert(iter,e);

(三)查

1.对迭代器解引用:得到pair类型

2.使用下表访问:m[key] = value;注意用下标访问一个不存在的元素将导致在map容器中添加一个新的元素,它的键即为该下标值。

3. m.count(k):返回m中k出现的次数,对于map只有0和1

4. m.find(k):返回指向该元素的迭代器

统计单词出现次数:

map<string,int> word_count;

string word;

while(cin>>word)

{

++word_count[word];

}

(四)删

m.erase(k);

m.erase(iter);

m.erase(b,e);

0 0