|
|
|
Как отменить сортировку в map
|
|||
|---|---|---|---|
|
#18+
У меня есть объект map std::map<std::string, StructureOfColumn *> MyMap; Далее идет такой код NameOfColumn = "Column1"; StructureOfColumn * StructColumn = new StructureOfColumn; Columns.insert(std::make_pair(NameOfColumnString,StructColumn)); Так вот все работает отлично, за одним исключением. Моя карта автоматически сортируется по ключу - NameOfColumnString. А мне надо, чтобы все записи вставлялись последовательно и хранились в том порядке как были вставлены. Как этого добится. Заранее спасибо за помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2006, 00:43 |
|
||
|
Как отменить сортировку в map
|
|||
|---|---|---|---|
|
#18+
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... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2006, 09:05 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=362&tid=2031586]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
62ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 253ms |
| total: | 396ms |

| 0 / 0 |
