遇到了这段代码。
def setup(&block)
@setups << block
end
这条线有什么作用?
@setups << block
对“<<”的作用感兴趣。
手册上说是双班制的操作员,但他在这里?
遇到了这段代码。
def setup(&block)
@setups << block
end
这条线有什么作用?
@setups << block
对“<<”的作用感兴趣。
手册上说是双班制的操作员,但他在这里?
对于数组<<
是 append 方法。它将一个项目添加到数组的末尾。
因此,在您的特定情况下,当您使用块调用时setup
,Proc
由该块制成的对象存储在@setups
.
注意:正如sbeam在他的评论中指出的那样,因为<<
它是一种方法,它可以根据调用它的对象的类型来做不同的事情,例如字符串的连接、整数的位移等。
请参阅“ ary << obj → ary ” 文档。
它通过将元素推到它的末尾来构建一个数组。
这是手动输入。
<<
在 Ruby 中通常用于表示追加-添加到列表或连接到字符串。
Ruby 使用它的原因尚不清楚,但可能是因为库在很大程度上区分了更改对象和返回已更改对象(更改对象的方法往往有!
后缀)。这样,<<
是改变对象的对应物+
。