Пока этот класс имеет operator<
(или иным образом делает его экземпляры <
-сравнимыми, например, путем определения автономного operator<
, который может так или иначе принимать два таких экземпляра в качестве аргументов - или Опять же, вы делаете карту с явным объектом сравнения), она будет работать нормально. Это будет быстро, если и только если, конечно, этот оператор или функция (и другие важные биты, такие как конструктор копирования).
Редактировать : добавлен дополнительный бит, который operator<
(если это то, что вы хотите использовать вместо предоставления объекта явного сравнения), не должен быть оператором, но может быть отдельной функцией - tx @Neil за указание на это в комментарии.