前/后递增/递减操作符(++
和 --
)是相当标准的编程语言语法(至少对于过程语言和面向对象语言)。
为什么 Ruby 不支持他们?我理解您可以用 +=
和 -=
完成同样的事情,但是排除这样的东西似乎有点任意,特别是因为它是如此简洁和传统。
例如:
i = 0 #=> 0
i += 1 #=> 1
i #=> 1
i++ #=> expect 2, but as far as I can tell,
#=> irb ignores the second + and waits for a second number to add to i
我知道 Fixnum
是不可变的,但是如果 +=
可以实例化一个新的 Fixnum
并设置它,为什么不对 ++
做同样的事情呢?
包含 =
字符的作业的一致性是导致这种情况的唯一原因吗,还是我遗漏了什么?