map的用法
时间: 2023-07-08 19:12:31 浏览: 121
map的用法.docx
map 是 C++ STL 中的一个关联容器,用于存储键值对(key-value)数据,其中每个键值对都是唯一的。map 中的元素按照键值自动排序,且支持快速的查找和插入操作,因此它被广泛应用于实现字典、映射等数据结构。
以下是 map 的一些常用操作和用法:
1. 创建 map 对象:
```c++
#include <map>
std::map<std::string, int> myMap; // 创建一个空的 map 对象,键为字符串类型,值为整数类型
```
2. 插入元素:
```c++
myMap.insert(std::make_pair("John", 25)); // 插入一个键值对,使用 std::make_pair() 函数创建键值对
myMap["Alice"] = 30; // 通过 [] 运算符插入一个键值对
```
3. 查找元素:
```c++
std::map<std::string, int>::iterator it = myMap.find("John"); // 查找键为 "John" 的元素,返回指向该元素的迭代器
if (it != myMap.end()) {
// 找到了
int age = it->second; // 获取值
} else {
// 没有找到
}
```
4. 遍历元素:
```c++
for (std::map<std::string, int>::iterator it = myMap.begin(); it != myMap.end(); ++it) {
std::cout << it->first << ": " << it->second << std::endl; // 输出键值对
}
```
5. 删除元素:
```c++
myMap.erase("Alice"); // 删除键为 "Alice" 的元素
myMap.clear(); // 删除所有元素
```
这些只是 map 的基本用法,map 还支持很多高级操作,如 lower_bound()、upper_bound()、equal_range() 等,可以根据具体需求进行使用。
阅读全文