加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 在一个呼叫中实现其他比较运算符

发布时间:2020-12-16 05:39:15 所属栏目:百科 来源:网络整理
导读:我已经看到,如果你有操作符,你可以实现,例如,操作符 = as!(a b).不过,当我去布里斯托尔的C委员会时,他们表示你可以用这种方式实现所有的比较运算符.特别地,当考虑具有非平凡比较运算符的类型(考虑任意长的字符串,特别是如果是Unicode)时,可以仅对呼叫运算符
我已经看到,如果你有操作符,你可以实现,例如,操作符> = as!(a< b).不过,当我去布里斯托尔的C委员会时,他们表示你可以用这种方式实现所有的比较运算符.特别地,当考虑具有非平凡比较运算符的类型(考虑任意长的字符串,特别是如果是Unicode)时,可以仅对呼叫运算符<我不能设想如何做到这一点. 如何实现运算符>并且运算符< =只需一次调用运算符<没有其他的比较运算符?

解决方法

> a> b == b <一个
> a< = b ==!(b< a)
> a> = b ==!(a< b)
甚至有可能在少于(在这里滥用我的元语法的种类)实现平等:

>(a == b)==(!(a< b)&&!(b< a))>(a!= b)==(a< b || b< a) 虽然我不建议在实践中这样做,因为它需要两次比较,通常可以直接更有效地实施.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读