Пары будут упорядочены с использованием пары operator<
(операция сравнения по умолчанию для std::map
), которая
Возвращает: x.first < y.first || (!(y.first < x.first) && x.second < y.second)
(C ++ 03, 20.2.2 / 6)
Обратите внимание, что использование пары в качестве ключа карты может привести к путанице, особенно при работе с итераторами карты (it->first.first
для получения первого элемента пары ключей).выглядит просто смешно).Но в некоторых случаях это может быть проще, чем создавать новую структуру для ключа.
Как и во всех вещах, используйте с осторожностью, и если это не так просто и легко понять, вероятно, лучше найти другой способ сделать это.