gpt4 book ai didi

ruby - Ruby 中的一元加运算符有什么意义?

转载 作者:数据小太阳 更新时间:2023-10-29 06:49:43 27 4
gpt4 key购买 nike

除了与一元减号形成良好的对称性之外,为什么要在 Numeric 类上定义一元加号运算符?它是否有一些实用值(value),除了引起混淆允许编写类似 ++i 的东西(与大多数非 Rubyist 认为的不同,它不会增加 i) .

我可以想到在自定义类上定义一元加号的场景可能很有用(比如说,如果您正在创建一些性感的 DSL),所以能够定义它是可以的,但为什么它已经在 Ruby numbers 上定义了?

最佳答案

也许这只是一个一致性问题,既与其他编程语言一致,又反射(reflect)一元减号。

The Ruby Programming Language 中找到对此的支持(由设计 Ruby 的 Yukihiro Matsumoto 撰写):

The unary plus is allowed, but it has no effect on numeric operands—it simply returns the value of its operand. It is provided for symmetry with unary minus, and can, of course, be redefined.

关于ruby - Ruby 中的一元加运算符有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5680587/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com