Как устроен std::map?
От: 777777w  
Дата: 06.03.15 12:15
Оценка: -2 :))
Нужно создать контейнер вида map<float, MyCoolClass>. По каждому уникальному ключу должен храниться один объект MyCoolClass. А значит, map должен как-то определять уникальность, то есть сравнивать float-ы на равенство. Следовательно он должен давать возможность подсунуть для ключа свой operator==. Однако в шаблонных параметрах есть только less. То что он есть — это понятно, раз он сортирует объекты, он должен уметь их сравнивать на неравенство. Но для определения уникальности этого мало, а сравнение float-ов меня не устраивает, я хочу написать оператор, который считает ключи равными при условии abs(a-b)<0.001f, куда же мне вставить мой оператор сравнения?
Отредактировано 06.03.2015 12:21 777777w . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.