Namespaces
Variants

std::experimental::ranges:: StrictWeakOrder

From cppreference.net
Definido en el encabezado <experimental/ranges/concepts>
template < class R, class T, class U >
concept bool StrictWeakOrder = Relation < R, T, U > ;
(1) (ranges TS)

El concepto StrictWeakOrder<R, T, U> especifica que la Relation R impone un ordenamiento estricto débil sobre sus argumentos. Una relación r es un ordenamiento estricto débil si

  • es irreflexiva: para todo x , r(x, x) es falso;
  • es transitiva: para todo a , b y c , si r(a, b) y r(b, c) son ambos verdaderos entonces r(a, c) es verdadero;
  • sea e(a, b) igual a !r(a, b) && !r(b, a) , entonces e es transitiva: e(a, b) && e(b, c) implica e(a, c) .

Bajo estas condiciones, se puede demostrar que e es una relación de equivalencia, y r induce un orden total estricto en las clases de equivalencia determinadas por e .

Notas

La distinción entre Relation y StrictWeakOrder es puramente semántica.