2017-01-25 2 views
0

У меня есть std::map<CString,CString> который я впоследствии итерации после его заполнения.Возможна сортировка карты <CString, CString>?

Можно ли сортировать эту карту по ключевому значению? Ключ - это имя. Поэтому, когда я повторяю карту, мне нужны имена в порядке A-Z.

ответ

1

std::map является стандартным контейнером C++, который уже хранит данные на основе ключа. Поэтому нет необходимости сортировать после того, как она была заполнена. Но да, чтобы лучше обрабатывать случаи дублирования ключей, вы должны использовать std::multimap, так как name может быть дублирован, если используется как ключ.

Кроме того, будет лучше, если вы используете CMap Class, так как смешивание стандартных классов C++ и окон кажется неуклюжим.

+1

Я не знал, что карта уже была отсортирована на основе ключа. Спасибо. Я использовал до сих пор 'CMapStringToString', но это не * поддерживает * сортировку значений. –

Смежные вопросы