Контейнер типа вектора, но с поиском по ключу
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 25.08.25 14:14
Оценка:
Здравствуйте!

Мне нужен вектор для добавления элементов (никакого удаления, вставки и тп), наверное подойдёт (а может даже и лучше — объекты жирные) и дека — порядок добавления важен.

Но иногда (и довольно часто) надо искать и по имени.

Основные операции — добавление (с ключом), полный перебор, и поиск по имени. Больше, наверное, ничего и не потребуется.

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

Поиск по имени будет использоваться: а) для определения, есть ли уже такое имя или нет; б) для получения элемента по имени (через индекс) — вот тут дека уже не очень. Поиск по имени будет конечно чаще. А получение элемента по имени или индексу будет заметно реже, чем добавление в конец.

Можно самому запилить контейнер с вектором или декой, рядом с которым лежит unordered_map и отображает имена на индексы, но что-то лень.

Может, есть что готовое похожее?

ЗЫ Мне нужно хранить различные дефиниции моего мега DSL языка.
Маньяк Робокряк колесит по городу
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.