c++映射类模板map
时间: 2023-11-12 10:08:12 浏览: 96
C++中的映射类模板map是一种关联式容器,它将键和值一一对应。map中的元素按照键的大小自动排序,因此在查找时可以使用二分查找算法,效率较高。map中的键和值可以是任意类型,只要能够比较大小即可。
map中的元素是以键值对的形式存储的,其中键是唯一的,值可以重复。可以通过键来访问对应的值,也可以通过迭代器遍历整个map。
以下是map的一些常用操作:
1. 插入元素:使用insert()函数插入元素,如果键已经存在,则会覆盖原有的值。
2. 删除元素:使用erase()函数删除元素,可以指定要删除的键或者迭代器。
3. 查找元素:使用find()函数查找元素,如果找到了,则返回指向该元素的迭代器,否则返回end()。
4. 访问元素:使用[]运算符访问元素,如果键不存在,则会自动插入一个默认值。
以下是一个简单的示例代码:
```
#include <iostream>
#include <map>
using namespace std;
int main()
{
map<string, int> m;
m["apple"] = 10;
m["banana"] = 20;
m["orange"] = 30;
cout << "apple: " << m["apple"] << endl;
cout << "banana: " << m["banana"] << endl;
cout << "orange: " << m["orange"] << endl;
map<string, int>::iterator it;
for (it = m.begin(); it != m.end(); it++) {
cout << it->first << ": " << it->second << endl;
}
return 0;
}
```
输出结果为:
```
apple: 10
banana: 20
orange: 30
apple: 10
banana: 20
orange: 30
```
阅读全文