powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как отменить сортировку в map
2 сообщений из 2, страница 1 из 1
Как отменить сортировку в map
    #33647705
Homosum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня есть объект map

std::map<std::string, StructureOfColumn *> MyMap;

Далее идет такой код

NameOfColumn = "Column1";
StructureOfColumn * StructColumn = new StructureOfColumn;
Columns.insert(std::make_pair(NameOfColumnString,StructColumn));

Так вот все работает отлично, за одним исключением. Моя карта автоматически сортируется по ключу - NameOfColumnString.

А мне надо, чтобы все записи вставлялись последовательно и хранились в том порядке как были вставлены.

Как этого добится.

Заранее спасибо за помощь.
...
Рейтинг: 0 / 0
Как отменить сортировку в map
    #33647927
redskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HomosumУ меня есть объект map

std::map<std::string, StructureOfColumn *> MyMap;

Далее идет такой код

NameOfColumn = "Column1";
StructureOfColumn * StructColumn = new StructureOfColumn;
Columns.insert(std::make_pair(NameOfColumnString,StructColumn));

Так вот все работает отлично, за одним исключением. Моя карта автоматически сортируется по ключу - NameOfColumnString.

А мне надо, чтобы все записи вставлялись последовательно и хранились в том порядке как были вставлены.

Как этого добится.

Заранее спасибо за помощь.

map не "автоматически" сортируется по ключу, а просто это тип контейнера такой. Вообще как хранятся элементы внутри мы не знаем, это детали реализации (например, в той версии stl, которая у меня под рукой, map реализован через красно-черное дерево). При обходе записи перебираются в порядке возрастания ключей, см. п. 23.1.2.9 Стандарта. Это свойство данного контейнера. Тут ничего не изменить (да и зачем?). Если надо обязательно сохранять порядок вставки, то либо выбирай другой ключ, тот же порядковый номер например, либо воспользуйся другими контейнерами: list, queue, vector...
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как отменить сортировку в map
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]