【问题标题】:Why is there an `equivalent` value for std::strong_ordering?为什么 std::strong_ordering 有一个“等效”值?
【发布时间】:2021-03-29 11:59:56
【问题描述】:

std::strong_ordering 的有效值为lessequalequivalentgreater。但是,strong_ordering::equivalentstrong_ordering::equal 似乎是相等的(ie,可互换),因为在这两种情况下,仅用于说明的 value 字段等于 0,并且对于仅用于初始化的公开构造函数。

strong_ordering 没有任何单独 equivalent 值是有道理的,因为当排序强时,等价值总是相等的。但是让strong_ordering::equivalent 成为strong_ordering::equal 的同义词而不是根本不定义它有什么意义呢?

【问题讨论】:

    标签: c++ c++20 spaceship-operator


    【解决方案1】:

    这允许为所有比较类别C 定义C::equivalent。以前有五个,全都有这个,现在只有三个。

    如果您需要类似的东西,拥有它会有所帮助。而且提供它不需要任何费用,所以......就是这样。

    【讨论】:

      猜你喜欢
      • 2018-06-27
      • 2018-12-12
      • 1970-01-01
      • 2023-04-06
      • 2020-06-09
      • 2017-06-11
      • 1970-01-01
      • 2017-01-17
      • 1970-01-01
      相关资源
      最近更新 更多