En esta página

QPartialOrdering Class

QPartialOrdering representa el resultado de una comparación que permite resultados desordenados. Más...

Cabecera: #include <QPartialOrdering>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Desde: Qt 6.0

Funciones Públicas

QPartialOrdering(std::partial_ordering stdorder)
operator std::partial_ordering() const

Miembros públicos estáticos

const QPartialOrdering Equivalent
const QPartialOrdering Greater
const QPartialOrdering Less
const QPartialOrdering Unordered
const QPartialOrdering equivalent
const QPartialOrdering greater
const QPartialOrdering less
const QPartialOrdering unordered
(since 6.7) bool is_eq(QPartialOrdering o)
(since 6.7) bool is_gt(QPartialOrdering o)
(since 6.7) bool is_gteq(QPartialOrdering o)
(since 6.7) bool is_lt(QPartialOrdering o)
(since 6.7) bool is_lteq(QPartialOrdering o)
(since 6.7) bool is_neq(QPartialOrdering o)
bool operator!=(QPartialOrdering lhs, QPartialOrdering rhs)
bool operator==(QPartialOrdering lhs, QPartialOrdering rhs)

Descripción Detallada

Un valor de tipo QPartialOrdering es típicamente devuelto por una función de comparación tripartita. Dicha función compara dos objetos, estableciendo si están ordenados y, en caso afirmativo, su orden. Utiliza este tipo de retorno para indicar que la ordenación es parcial, es decir, que no todos los pares de valores están ordenados.

QPartialOrdering tiene cuatro valores, representados por las siguientes constantes simbólicas:

  • less representa que el operando izquierdo es menor que el derecho;
  • equivalent representa que los dos operandos son equivalentes;
  • greater representa que el operando izquierdo es mayor que el derecho;
  • unordered representa que los dos operandos no están ordenados.

QPartialOrdering se utiliza idiomáticamente comparando una instancia contra un cero literal, por ejemplo así:

// given a, b, c, d as objects of some type that allows for a 3-way compare,
// and a compare function declared as follows:

QPartialOrdering compare(T lhs, T rhs); // defined out-of-line
~~~

QPartialOrdering result = compare(a, b);
if (result < 0) {
    // a is less than b
}

if (compare(c, d) >= 0) {
    // c is greater than or equal to d
}

Comparando QPartialOrdering::unordered contra el literal 0 siempre devuelve un resultado false.

Ver también Qt::strong_ordering, Qt::weak_ordering, y Visión general de los tipos de comparación.

Documentación de funciones miembro

[constexpr noexcept] QPartialOrdering::QPartialOrdering(std::partial_ordering stdorder)

Construye un objeto QPartialOrdering a partir de stdorder usando las siguientes reglas:

  • std::partial_ordering::less convierte a less.
  • std::partial_ordering::equivalent convierte a equivalent.
  • std::partial_ordering::greater convierte a greater.
  • std::partial_ordering::unordered se convierte en unordered

[constexpr noexcept] QPartialOrdering::operator std::partial_ordering() const

Convierte este valor QPartialOrdering en un objeto std::partial_ordering utilizando las siguientes reglas:

  • less convierte a std::partial_ordering::less.
  • equivalent convierte a std::ordenación_parcial::equivalente.
  • greater convierte a std::ordenación_parcial::mayor.
  • unordered convierte a std::ordenación_parcial::desordenada.

Documentación de variables miembro

const QPartialOrdering QPartialOrdering::Equivalent

Representa el resultado de una comparación en la que los dos operandos son equivalentes.

const QPartialOrdering QPartialOrdering::Greater

Representa el resultado de una comparación en la que el operando izquierdo es mayor que el operando derecho.

const QPartialOrdering QPartialOrdering::Less

Representa el resultado de una comparación en la que el operando izquierdo es menor que el operando derecho.

const QPartialOrdering QPartialOrdering::Unordered

Representa el resultado de una comparación en la que no existe relación de orden entre los dos operandos.

const QPartialOrdering QPartialOrdering::equivalent

Representa el resultado de una comparación en la que los dos operandos son equivalentes.

const QPartialOrdering QPartialOrdering::greater

Representa el resultado de una comparación en la que el operando izquierdo es mayor que el operando derecho.

const QPartialOrdering QPartialOrdering::less

Representa el resultado de una comparación en la que el operando izquierdo es menor que el operando derecho.

const QPartialOrdering QPartialOrdering::unordered

Representa el resultado de una comparación en la que no existe relación de orden entre los dos operandos.

No miembros relacionados

[constexpr noexcept, since 6.7] bool is_eq(QPartialOrdering o)

[constexpr noexcept, since 6.7] bool is_neq(QPartialOrdering o)

[constexpr noexcept, since 6.7] bool is_lt(QPartialOrdering o)

[constexpr noexcept, since 6.7] bool is_lteq(QPartialOrdering o)

[constexpr noexcept, since 6.7] bool is_gt(QPartialOrdering o)

[constexpr noexcept, since 6.7] bool is_gteq(QPartialOrdering o)

Convierte o en el resultado de uno de los seis operadores relacionales:

FunciónOperación
is_eqo == 0
is_neqo != 0
is_lto < 0
is_lteqo <= 0
is_gto > 0
is_gteqo >= 0

Estas funciones se proporcionan por compatibilidad con std::partial_ordering.

Estas funciones se introdujeron en Qt 6.7.

[constexpr noexcept] bool operator!=(QPartialOrdering lhs, QPartialOrdering rhs)

Devuelve true si lhs y rhs representan resultados diferentes; en caso contrario, devuelve true.

[constexpr noexcept] bool operator==(QPartialOrdering lhs, QPartialOrdering rhs)

Devuelve true si lhs y rhs representan el mismo resultado; en caso contrario, devuelve false.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.