c++11.Map/MutiMap容器
大约 1 分钟
Map|MutiMap
定义:
#include <map>
std::map<KeyType, ValueType> myMap;
KeyType
是键的类型,ValueType
是值的类型。
主要操作:
插入元素: 使用
insert
函数或数组下标运算符[]
插入元素。myMap.insert(std::make_pair(key, value)); // 或者 myMap[key] = value;
访问元素: 使用键访问元素。
ValueType value = myMap[key];
删除元素: 使用
erase
函数删除指定键的元素。myMap.erase(key);
查找元素: 使用
find
函数查找指定键的元素。auto it = myMap.find(key); if (it != myMap.end()) { // 元素找到 }
迭代: 使用迭代器对
std::map
中的元素进行遍历。for (auto it = myMap.begin(); it != myMap.end(); ++it) { KeyType key = it->first; ValueType value = it->second; // 处理键值对 }
与 std::pair
的联系:
std::pair
通常用于表示键-值对,并且在 std::map
中的元素实际上就是 std::pair
类型的对象。每个元素都是一个由键和值组成的有序对。
#include <iostream>
#include <map>
int main() {
std::map<int, std::string> myMap;
// 使用 std::pair 插入元素
myMap.insert(std::make_pair(1, "One"));
myMap.insert(std::pair<int, std::string>(2, "Two"));
// 访问元素
std::cout << "Value corresponding to key 1: " << myMap[1] << std::endl;
return 0;
}