Информация об изменениях

Сообщение Re: Контейнер типа вектора, но с поиском по ключу от 02.09.2025 20:55

Изменено 02.09.2025 20:59 vdimas

Re: Контейнер типа вектора, но с поиском по ключу
Здравствуйте, Marty, Вы писали:

M>Ключ обычно лежит в самих элементах в виде поля string name;


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


M>ЗЫ Мне нужно хранить различные дефиниции моего мега DSL языка.


Насколько я понял, порядковый номер нужен редко или даже однократно?

Тогда для каждой дефиниции добавить целочисленное поле и хранить в нём значение монотонного счётчика, которое для каждой дефиниции начинается с 0-ля.
Ну и, когда надо будет — построить map по этому индексу (т.е. отсортировать элементы) и пройтись затем по ним в исходном порядке.

Тут смысл в том, чтобы не хранить данные во некоем вспомогательном контейнере, потому что оно не требуется, но усложняет логику.
Re: Контейнер типа вектора, но с поиском по ключу
Здравствуйте, Marty, Вы писали:

M>Ключ обычно лежит в самих элементах в виде поля string name;


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


M>ЗЫ Мне нужно хранить различные дефиниции моего мега DSL языка.


Насколько я понял, порядковый номер нужен редко или даже однократно?

Тогда для каждой дефиниции добавить целочисленное поле и хранить в нём значение монотонного счётчика, которое для каждой дефиниции начинается с 0-ля.
Ну и, когда надо будет — построить map по этому индексу (т.е. отсортировать элементы) и пройтись затем по ним в исходном порядке.

Тут смысл в том, чтобы не хранить данные в некоем вспомогательном контейнере, потому что оно не требуется, но усложняет логику.