假设我已经做红宝石称为块的集合
callables = []
callables << block1
callables << block2
callables << block3
callables << block4
内置可调用对象的数组,后来我想打电话给这些块。我知道我能做到
callables.each { |block| block.call }
但我想知道如果我能把它甚至通过调用类似
callables.each :call
我曾尝试上面的代码更简单,但有引发ArgumentError。 ruby是否支持这种语法?
你可以做'callables.each(&:call)'在对象上调用'to_proc',并把它作为一个块传递给方法。 – cristian 2015-04-01 17:56:49