【发布时间】:2012-10-15 04:56:58
【问题描述】:
可能重复:
Why does a class used as a value in a STL map need a default constructor in …?
当我使用地图时,值肯定会被初始化为默认值还是我不应该依赖这个?
例如,假设我有以下代码:
map<string, int> myMap;
cout << myMap["Hey"];
这将使用我的编译器输出“0”。这是有保证的行为吗?这可能不会总是初始化为 0?
【问题讨论】:
-
不是重复的。上面链接的问题是关于用作映射值的结构中的原始类型。这是关于将原始类型直接用作值。