这是填充地图的现有代码。
typedef unordered_map<std::string, SomeSet> StringToSetMap;
StringToSetMap myMap;
std::string str ("hello");
SomeSet &mySet = myMap[str]; //Map populates here
&#34; SomeSet&#34;是一个typedefed unordered_set。
据我所知,地图只能按照here
提及的方式填充这是如何以这种方式填充地图的?
答案 0 :(得分:1)
See the docs。请注意,运算符的描述是......
返回对映射到等效于key的键的值的引用, 如果此类密钥尚不存在则执行插入
另请注意:
返回值
如果没有带键键的元素,则引用新元素的映射值 存在。否则引用现有元素的映射值 其密钥等同于密钥。
&#34;你好&#34;它不是地图中的关键字,因此会插入并返回对闪亮的新SomeSet
对象的引用。
(注意:键是移动构造的或复制构造的,但无论哪种方式,值都是默认构造的。确保你有SomeSet
的默认构造函数!)