c++ - 如果我有一个嵌套映射作为多映射的值,我如何将值插入内部映射?

标签 c++ c++11 dictionary multimap

我正在尝试实现一个字典,其中我有一个外部映射(作为多映射),键是要搜索的词,值是内部映射,它本身有几对,具有不同的值,所有这些都可以映射到外部多映射键。

例如:Distinct 一词有多种含义,具体取决于它是名词、动词、形容词还是代词 ==> 名词< em>- 这个程序中的关键字 副词- 独一无二。写得“清楚地”

我正在考虑将单词 Distinct 作为 key 映射到外部 multimap,并将词性映射为内部映射的键,将定义作为内部 map 的值(value)。

到目前为止,我将多重映射声明为:

typedef map<string, string> valMap;

multimap<string,valMap> myMultMap;

我试过像这样使用 insert() 添加值:

myMultMap.insert("Diction", valMap.insert(pair<string,string>("fun", "first Value"));

我刚刚开始学习 map ,但仍然不确定 map 中迭代器的内部工作原理。任何帮助将不胜感激。

最佳答案

首先,创建内部映射并将其存储到一个变量中。然后使用insert将其添加到外层 map 中。

关于c++ - 如果我有一个嵌套映射作为多映射的值,我如何将值插入内部映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52905467/

相关文章:

c++ - 如何为自定义字符串类型编写构造函数/赋值运算符重载?

c++ - std :move 的魔力是什么

c++ - C++ 中的二叉搜索树,叶子为空值,不使用引用参数

python - 在集合字典中切换键和值

c# - 将键值从 NameValueCollection 复制到通用字典

c++ - 如何在 QPixmap 上应用深色 mask 层?

c++ - 小数显示不正确c++

c++ - 假设 if 语句中没有发生有符号溢出

c++ - 如何给现有项目添加CUDA 7.0加速?

c# - 将匿名类型的 List<object> 转换为 Dictionary<string, SortedList<DateTime, double>>