У меня есть std:: map mymap
Теперь, если я вставляю значения на карте, например:
std::map <string, string> mymap;
mymap["first"] = "hi";
mymap["third"] = "how r you";
mymap["second"] = "hello";
Теперь я хочу выполнить итерацию по карте и напечатать значение в порядке сортировки (ключей):
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
Я думал, что по умолчанию карты хранятся в сортированных ключах, но я получаю одинаковый порядок вывода, поскольку я даю входные данные. Нужно ли мне предоставлять свою функцию сортировки для этого или нужно сделать что-то дополнительное перед повторением на карте?