std::strong_equal

来自cppreference.com
< cpp‎ | utility
定义于头文件 <compare>
template< class T >
constexpr std::strong_equality strong_equal(const T& a, const T& b);
(C++20 起)

用三路比较比较二个值,并产生 std::strong_equality 类型结果。

具体而言,

  • 若表达式 a <=> b 为良式且其结果可转换为 std::strong_equality ,则返回该结果。
  • 否则,若表达式 a <=> b 为良式,但其结果不可转换为 std::strong_equality ,则定义函数为被删除。
  • 否则,若表达式 a <=> b 为病式,但表达式 a == b 为良式且可转换为 bool
  • a == btrue ,则返回 std::strong_equality::equal
  • 否则,返回 std::strong_equality::nonequal
  • 否则,定义函数为被删除。

目录

[编辑] 参数

a, b - 要比较的值

[编辑] 返回值

上述的 std::strong_equality 类型值。

[编辑] 注意

[编辑] 示例

[编辑] 参阅

三路比较的结果类型,仅支持相等/不相等,且可替换
(类) [编辑]
进行三路比较并产生 std::strong_ordering 类型结果
(函数模板) [编辑]
进行三路比较并产生 std::partial_ordering 类型结果
(函数模板) [编辑]
进行三路比较并产生 std::weak_ordering 类型结果
(函数模板) [编辑]
进行三路比较并产生 std::weak_equality 类型结果
(函数模板) [编辑]