阅读量:0
std::map
是C++标准库中的一个关联容器,用于存储键值对。std::map
内部使用红黑树(Red-Black Tree)来实现,保证了键值对的有序性。
使用std::map
可以按照键值对的键来快速查找对应的值,时间复杂度为O(log n)。可以通过std::map
的成员函数来插入、删除、查找元素,并且还支持遍历操作。
以下是std::map
的一些常用方法:
insert(key, value)
:向map中插入一个键值对。erase(key)
:删除map中指定键对应的键值对。find(key)
:查找map中指定键对应的值。begin()
和end()
:返回指向map第一个元素和最后一个元素的迭代器,用于遍历map中的元素。size()
:返回map中元素的个数。empty()
:判断map是否为空。
示例代码:
#include <iostream> #include <map> int main() { std::map<int, std::string> myMap; myMap.insert(std::make_pair(1, "apple")); myMap.insert(std::make_pair(2, "banana")); myMap.insert(std::make_pair(3, "cherry")); std::map<int, std::string>::iterator it; for (it = myMap.begin(); it != myMap.end(); ++it) { std::cout << it->first << " => " << it->second << std::endl; } if (myMap.find(2) != myMap.end()) { std::cout << "Found key 2 with value: " << myMap[2] << std::endl; } myMap.erase(3); std::cout << "Map size: " << myMap.size() << std::endl; return 0; }
以上代码展示了如何使用std::map
插入、查找、删除元素,并遍历map中的所有元素。