Max*_*rai 29 c++ insert std map
我必须将std :: map存储为std :: map中的值
std::map< std::string, std::map<std::string, std::string> > someStorage;
Run Code Online (Sandbox Code Playgroud)
如何插入第二个(内部)地图?我尝试过:
someStorage.insert( std::make_pair("key", std::make_pair("key2", "value2")) );
Run Code Online (Sandbox Code Playgroud)
但这会引发很多错误.怎么了?
Mar*_*ork 43
尝试:
std::map< std::string, std::map<std::string, std::string> > someStorage;
someStorage["Hi"]["This Is Layer Two"] = "Value";
Run Code Online (Sandbox Code Playgroud)
Dar*_*con 25
someStorage["key"].insert(std::make_pair("key2", "value2")));
Run Code Online (Sandbox Code Playgroud)
如果你仍然想在外部地图上使用insert,这是一种方法
std::map<std::string, std::string> inner;
inner.insert(std::make_pair("key2", "value2"));
someStorage.insert(std::make_pair("key", inner));
Run Code Online (Sandbox Code Playgroud)