Как сделать поиск только в std :: map с помощью пользовательского компаратора? - PullRequest
0 голосов
/ 17 марта 2020

Я хочу, чтобы std::map использовал компаратор только при поиске, например, остальные операции, включая операцию вставки, должны использовать операцию по умолчанию. Возможно ли это?

1 Ответ

0 голосов
/ 17 марта 2020

Я хочу, чтобы std :: map использовал компаратор только при поиске ... Возможно ли это?

Что ж, вы можете выполнять линейный поиск на карте с помощью любого компаратора, который вы используете. хотеть. Но это будет не так быстро, как при использовании древовидной структуры поиска, построенной с использованием компаратора карты.

У меня есть карта с ключами, которые являются регулярными выражениями (представлены по строкам). Поэтому, когда я хочу найти какое-то значение по ключу, карта должна проверить, соответствует ли ключ одному из регулярных выражений карты.

Кажется, что линейный поиск - это то, что вам действительно нужно.

...