У меня есть std :: map mymap
Теперь, если я вставлю значения в карту, например:
std::map <string, string> mymap;
mymap["first"] = "hi";
mymap["third"] = "how r you";
mymap["second"] = "hello";
Теперь я хочу перебрать карту и напечатать значение вsorted (keys) способом:
map<string, string>::iterator itr;
for(itr = mymap.begin(); itr != mymap.end(); itr++)
{
string newline = itr->second;
cout << newline << endl;
}
Вывод должен быть:
hi
hello
how r you
Я думал, что по умолчанию карта хранится в порядке отсортированных ключей, но я получаю тот же порядок вывода, что иЯ даю вход.Нужно ли предоставлять для этого свою функцию сортировки или нужно сделать что-то дополнительное перед итерацией по карте?