0

找到这个包含对的 Multimap?,但帮助不大

我将如何插入两个字符串pair?下面,我的两次失败的尝试。

multimap<string, pair<string,string> > mymm;
mymm["Alex"] = std::pair<"000","000">; //errors
mymm.insert(pair<string, pair<string, string> > 
           ("Alex", std::pair<"000","000">); // errors out as well

我正在使用 32 位的 Visual Studio 2010。谢谢 !

4

2 回答 2

5
mymm.insert(make_pair("Alex",make_pair("000","000")));

多图不允许使用运算符 [] 进行查找,因为可能存在多个匹配项。

make_pair 是一种无需显式指定类型即可创建对的便捷方式。如果不使用 make_pair,您将需要执行以下操作:

mymm.insert(pair<string,pair<string,string> >("Alex",pair<string,string>("000","000")));
于 2012-06-28T04:27:16.157 回答
2

std::pair<string,string>("000","000")应该这样做。

< 和 > 之间包含的代码表示您要插入的变量的类型——在本例中为字符串

于 2012-06-28T04:04:43.000 回答