std::map<std::string, std::string> mData;
mData.insert(std::pair<std::string, std::string>("key1", "val1"));
mData.insert(std::pair<std::string, std::string>("key2", "val2"));
mData.insert(std::pair<std::string, std::string>("key1", "modify"));//插入失败,跳过
//用下面方法是已存在键值修改,如果不存在就直接添加
mData["key1"] = "modify...";
mData["key3"] = "insert";
mData.erase("key1"); //这种方法删除没有返回值,如果不存在这个key就直接跳过
mData.erase("key10");
std::map<std::string, std::string>::iterator it = mData.erase(mData.begin());
printf("next value:%s\n",it->second.c_str());
it = mData.erase(mData.begin());
if (it != mData.end())
printf("next value:%s\n", it->second.c_str());
else
printf("empty...\n");