weak_ordering 类

class Qt::weak_ordering

Qt::weak_ordering 表示一种比较,其中等效的值仍然可以区分。更多信息...

头文件 #include <QtCompare>
CMakefind_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmakeQT += core
Qt 6.7

公共函数

weak_ordering(std::weak_ordering stdorder)
Qt::partial_orderingoperator Qt::partial_ordering() const
std::weak_orderingoperator std::weak_ordering() const

静态公共成员

const Qt::weak_orderingequivalent
const Qt::weak_orderinggreater
const Qt::weak_orderingless
boolis_eq(Qt::weak_ordering o)
boolis_gt(Qt::weak_ordering o)
boolis_gteq(Qt::weak_ordering o)
boolis_lt(Qt::weak_ordering o)
boolis_lteq(Qt::weak_ordering o)
boolis_neq(Qt::weak_ordering o)
booloperator!=(Qt::weak_ordering lhs, Qt::weak_ordering rhs)
booloperator==(Qt::weak_ordering lhs, Qt::weak_ordering rhs)

详细描述

类型 Qt::weak_ordering 的值通常由一个三路比较函数返回。此类函数比较两个对象并确定它们之间的顺序。该返回类型用于指示顺序是弱的,即等效的值仍然可以区分。

Qt::weak_ordering 有三个值,分别用以下符号常量表示:

  • less 表示左操作数小于右操作数;
  • equivalent 表示左操作数等于右操作数;
  • greater 表示左操作数大于右操作数;

Qt::weak_ordering 通常通过与字面量零进行比较来惯用,例如这样:

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

Qt::weak_ordering compare(T lhs, T rhs); // defined out-of-line
~~~

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

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

另请参阅 Qt::strong_orderingQt::partial_ordering比较类型概述

成员函数文档

[constexpr noexcept] weak_ordering::weak_ordering(std::weak_ordering stdorder)

使用以下规则从 stdorder 构造一个Qt::weak_ordering对象:

  • std::weak_ordering::less 转换为 less
  • std::weak_ordering::equivalent 转换为 equivalent
  • std::weak_ordering::greater 转换为 greater

[constexpr noexcept] Qt::partial_ordering weak_ordering::operator Qt::partial_ordering() const

使用以下规则将此 Qt::weak_ordering值转换为 Qt::partial_ordering对象:

[constexpr noexcept] std::weak_ordering weak_ordering::operator std::weak_ordering() const

使用以下规则将此 Qt::weak_ordering值转换为 std::weak_ordering对象:

  • less 转换为 std::weak_ordering::less。
  • equivalent 转换为 std::weak_ordering::equivalent。
  • greater 转换为 std::weak_ordering::greater。

成员变量文档

const Qt::weak_ordering weak_ordering::equivalent

表示当左操作数与右操作数相等时比较的结果。

const Qt::weak_ordering weak_ordering::greater

表示当左操作数大于右操作数时比较的结果。

const Qt::weak_ordering weak_ordering::less

表示当左操作数小于右操作数时比较的结果。

相关非成员函数

[constexpr noexcept] bool is_eq(Qt::weak_ordering o)

[constexpr noexcept] bool is_gt(Qt::weak_ordering o)

[constexpr noexcept] bool is_gteq(Qt::weak_ordering o)

[constexpr noexcept] bool is_lt(Qt::weak_ordering o)

[constexpr noexcept] bool is_lteq(Qt::weak_ordering o)

[constexpr noexcept] bool is_neq(Qt::weak_ordering o)

o 转换为六个关系运算符之一的结果

函数操作
is_eqo == 0
is_neqo != 0
is_lto < 0
is_lteqo <= 0
is_gto > 0
is_gteqo >= 0

这些函数提供与 std::weak_ordering 的兼容性。

[constexpr noexcept] bool operator!=(Qt::weak_ordering lhs, Qt::weak_ordering rhs)

如果 lhsrhs 表示不同的结果,则返回 true;否则返回 true。

[constexpr noexcept] bool operator==(Qt::weak_ordering lhs, Qt::weak_ordering rhs)

如果 lhsrhs 表示相同的结果,则返回 true;否则返回 false。

© 2024 Qt 公司。此处包含的文档贡献的版权属于各自的所有者。此处提供的文档受 GNU自由文档许可证版本1.3 的条款约束,由自由软件基金会发布。Qt 及相关标志是芬兰及/或全球其他地区的 The Qt Company Ltd. 的商标。所有其他商标均为各自所有者的财产。