map和set容器操作
声明一个关联容器c,不需要初始化
1.用迭代器遍历关联容器
auto it = c.begin();
while(it != c.end() ){
cout << it->first << “key”;
cout << it ->seconf << “value”;
++it;
}
2.添加元素
c.insert(value_type)
c.insert(pair); //直接insert 匹配的pair类型元素
c.insert({a,b});
c.insert(make_pair(key,value)); //将对应的key和value转化为pair类型后insert
c.insert(a.begin(),a.end()); //insert 另一个map迭代器范围内的值
3.删除元素
c.erase(key)
c.erase§ // 迭代器p
c.erase(b,e) // 迭代器b和e
4.下标操作(最常用)
c[k] = 1; // 如果k不在c中,会先添加后赋值
auto it = c[k]; // it的类型是map_type
auto it = c.begin(); // it的类型是value_typecx
这与vector和string有所不同
5.访问元素
c.find(key) 返回指向第一个关键字为k的元素
c.count(key) 返回关键词等于k的元素的数量
评论