stl中map使用方法
时间: 2024-09-15 11:13:24 浏览: 39
C++98 STL的map 如何避免自动排序.md
STL(Standard Template Library)中的`std::map`是一种关联容器,它存储键值对,通过键(Key)进行访问,实现了高效的查找、插入和删除操作。`map`内部通常采用红黑树的数据结构,提供O(log n)的时间复杂度。
以下是使用`std::map`的基本步骤:
1. 包含头文件:
```cpp
#include <map>
```
2. 定义映射类型,例如,如果你的键和值都是整数:
```cpp
typedef std::map<int, string> MyMap;
```
3. 创建空的map实例:
```cpp
MyMap myMap;
```
4. 插入元素:
```cpp
myMap.insert({5, "Five"});
```
或者更简洁地:
```cpp
myMap[5] = "Five";
```
5. 查找元素(如果存在则返回迭代器):
```cpp
auto it = myMap.find(5); // 返回指向"Five"的迭代器
```
6. 访问元素:
```cpp
if (it != myMap.end()) {
std::cout << it->second; // 输出"Five"
}
```
7. 删除元素(通过迭代器):
```cpp
it = myMap.erase(it);
```
8. 遍历整个map:
```cpp
for (const auto& pair : myMap) {
std::cout << pair.first << ": " << pair.second << "\n";
}
```
阅读全文