Как искать в std :: map или около того ключом другого типа?C++

Программы на C++. Форум разработчиков
Anonymous
Как искать в std :: map или около того ключом другого типа?

Сообщение Anonymous »

Мне нужно создать карту с помощью пользовательского ключа типа, но тогда я хочу найти ключ с помощью значения другого типа. Я могу определить Operator = m.min) && (k
Ну, посмотрите, этот код делает то, что мне нужно: < /p>
std::string Find(const std::map& map, const value& v){
for (auto it: map) {
if (v == it.first) return it.second;
}
return ""; // for not found
}
< /code>
Тем не менее, сложность этого подхода линейна, в то время как std :: map :: find быстрее.
Ключ (15,15) не существует, есть ключ (11,20), который должен быть найден.>

Подробнее здесь: https://stackoverflow.com/questions/795 ... other-type

Вернуться в «C++»