Потому что map имеет неизменяемый ключь внутри.
Потому что внутри std::map при вызове оператора < используется константный this
потому что этот operator< нужен для поиска значений внутри map, и он не должен менять сами элементы, а квалификатор const у метода класса именно для этого и нужен
Потому что вот допустим мапа – красно-чёрное дерево. У тебя неконстантный оператор сравнения мутирует состояние мапы, на которое она опирается как инвариант. В итоге, после каждого такого сравнения она должна была бы снова и снова ребаланситься. Короче говоря, невозможно это
Не this, а ключ словаря
This у ключа словаря
Обсуждают сегодня