在 Ruby 1.8.7 和之前的版本中,Enumerable::each_with_index
不接受任何参数。在 Ruby 1.9 中,它将接受任意数量的参数。文档/代码显示它只是将这些参数传递给::each
. 使用内置和标准库 Enumerables,我相信传递参数会产生错误,因为 Enumerable 的::each
方法不需要参数。
所以我猜这仅在创建您自己的 Enumerable 时有用,您可以在其中创建一个::each
接受参数的方法。什么是有用的例子?
这种变化还有其他不明显的后果吗?