weak_ordering Class

class Qt ::weak_ordering

Qt::weak_ordering represents a comparison where equivalent values are still distinguishable. 更多...

頭: #include <QtCompare>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Since: Qt 6.7

公共函數

weak_ordering (std::weak_ordering stdorder )
Qt::partial_ordering operator Qt::partial_ordering () const
std::weak_ordering operator std::weak_ordering () const

靜態公共成員

const Qt::weak_ordering equivalent
const Qt::weak_ordering greater
const Qt::weak_ordering less
bool is_eq (Qt::weak_ordering o )
bool is_gt (Qt::weak_ordering o )
bool is_gteq (Qt::weak_ordering o )
bool is_lt (Qt::weak_ordering o )
bool is_lteq (Qt::weak_ordering o )
bool is_neq (Qt::weak_ordering o )
bool operator!= (Qt::weak_ordering lhs , Qt::weak_ordering rhs )
bool operator== (Qt::weak_ordering lhs , Qt::weak_ordering rhs )

詳細描述

A value of type Qt::weak_ordering is typically returned from a three-way comparison function. Such a function compares two objects and establishes how they are ordered. It uses this return type to indicate that the ordering is weak; that is, equivalent values may be distinguishable.

Qt::weak_ordering has three values, represented by the following symbolic constants:

  • less 錶示左操作數 < 右操作數;
  • equivalent represents that the left operand is equivalent to the right;
  • greater represents that the left operand is greater than the right,

Qt::weak_ordering is idiomatically used by comparing an instance against a literal zero, for instance like this:

// 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_ordering , Qt::partial_ordering ,和 比較類型概述 .

成員函數文檔編製

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

構造 Qt::weak_ordering 對象從 stdorder 使用下列規則:

  • std::weak_ordering::less converts to less .
  • std::weak_ordering::equivalent converts to equivalent .
  • std::weak_ordering::greater converts to greater .

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

轉換此 Qt::weak_ordering value to a Qt::partial_ordering object using the following rules:

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

轉換此 Qt::weak_ordering value to a std::weak_ordering object using the following rules:

  • less converts to std::weak_ordering::less.
  • equivalent converts to std::weak_ordering::equivalent.
  • greater converts to std::weak_ordering::greater.

成員變量文檔編製

const Qt::weak_ordering weak_ordering:: equivalent

Represents the result of a comparison where the left operand is equivalent to the right operand.

const Qt::weak_ordering weak_ordering:: greater

Represents the result of a comparison where the left operand is greater than the right operand.

const Qt::weak_ordering weak_ordering:: less

Represents the result of a comparison where the left operand is less than the right operand.

相關非成員

[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 into the result of one of the six relational operators:

函數 操作
is_eq o == 0
is_neq o != 0
is_lt o < 0
is_lteq o <= 0
is_gt o > 0
is_gteq o >= 0

提供這些函數是為兼容 std::weak_ordering .

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

返迴 True 若 lhs and rhs 錶示不同結果;否則,返迴 true。

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

返迴 True 若 lhs and rhs 錶示相同結果;否則,返迴 false。