用作映射值的列表的默认值

时间:2013-03-26 01:30:55

标签: c++ list map

嗨我想知道我是否有一个带有int作为元素的地图和一个int作为值的列表,我尝试访问一个不在地图中的键。运算符返回默认值。但是什么被认为是列表的默认值?默认构造函数?

2 个答案:

答案 0 :(得分:3)

是的,它将默认构建一个列表。 See here

如果这不是您想要的行为,您可以使用std::map::atsee here)代替std::map::operator[]来访问元素,如果密钥不存在则会抛出异常而不是插入新元素。

注意:我的回答是假设您在问题中引用std命名空间。

答案 1 :(得分:1)

如果key不在地图中,operator []会在key处插入一个新元素并使用default constructor,您可以阅读更多here }}

std::list的{​​{3}}构建了一个empty容器。