1
考虑以下两个红宝石片段:`begin` block vs括号:只是一个风格问题?
def foo
@foo ||= begin
get_the_foo
end
end
VS
def foo
@foo ||= (
get_the_foo
)
end
的结果是一样的。就个人而言,我更喜欢第二个,因为begin
让我期待异常处理。
这些除了款式还有什么区别吗?例如,性能,范围,内存等?
我的猜测是begin
是'重',因为它可以做更多。
我认为,如果有的话,这种差异是可以忽略的。 – sawa
我对两者都进行了基准测试,并获得了相同的结果,所以我猜测它们在内部是一样的。 –
我不会这么做 - 我只是做'@foo || = get_the_foo'。 – sevenseacat