C++ именованные требования: LessThanComparable
Материал из cppreference.com
Тип должен работать с оператором < и результат должен иметь стандартный смысл.
Требования
Тип T удовлетворяет LessThanComparable если
Даны
a,b, иc, выражения типаTилиconst T
Эти выражения должны быть допустимыми и иметь следующие эффекты:
| Выражение | Возвращаемый тип | Возвращаемое значение | Постусловия |
|---|---|---|---|
a < b
|
implicitly convertible к bool
|
Establishes strict weak ordering отношение со следующими свойствами:
|
Требования
Чтобы удовлетворять этому требованию, типы, которые не имеют встроенных comparison operators должны обеспечить user-defined operator<.
Для типов, которые одновременно EqualityComparable и LessThanComparable, стандартная библиотека C++ умеет различать равенство, которое является значением выражения a == b и эквивалентность, которое является значением выражения !(a < b) && !(b < a).
Смотри также
| a BinaryPredicate которые устанавливают отношения порядка (именованное требование) |