目录
std::map 和 std::unordered_map 区别
map访问,没有key会获取默认值
在 C++ 的 std::map
中,如果使用 operator[]
访问一个不存在的键,它会创建一个新的键,并将其关联的值初始化为该值类型的默认值。如果值类型是内置类型(例如 int、double 等),默认值通常是零。如果值类型是自定义类,则会调用该类的默认构造函数来创建默认值。
#include <iostream>
#include <map>
int main() {
std::map<int, int> myMap;
// 访问不存在的键
int value = myMap[5]; // 默认会将 myMap[5] 初始化为 int 类型的默认值,即 0
std::cout << "Value: " << value << std::endl; // 输出默认值 0
return 0;
}