我想将代码从perl转换为c ++,我的问题是perl中的多键映射!例:
perl的:
$address{name}{familyName} = $someAddress;
Run Code Online (Sandbox Code Playgroud)
和键不是唯一的.我想用c ++中的类似数据结构使用map或......!我也想用第一个键搜索和获取值,例如我想在c ++中使用%keys {name}.
编辑:我想知道如果有特殊名称的姓氏存在与否,名称和姓氏一起是关键和唯一的而不是每个.
相当于%keys{name}完成std::map.您可以使用括号运算符来访问地图的元素.如果你要求一个尚未存在的密钥,它会方便地插入一个新的默认构造对象.您可以使用地图地图复制多键地图,例如std::map<std::string, std::map<std::string, std::string> >.
如果您的密钥可能有多个与之关联的值,请使用std::multimap而不是map.