2009-09-10 59 views
0

在Ruby中我可以使用我需要在Ruby中使用圓括號來表示嗎?

result << (yield element) 

和一切正常,但如果我不

result.push(yield element) 

我得到需要括號未來的兼容性警告。我可以在上述改變

result.push(yield(element)) 

,並解釋是高興了,但我不明白爲什麼我需要在一個呼叫括號產生,而不是其他?

+1

第二個示例具有嵌套函數調用。 Ruby不會抱怨非嵌套調用(即'puts「hello」'很好)它不是特定於'yield' – a2800276 2009-09-10 10:00:17

回答

3

您可以忽略該警告。在1.8.7及更高版本中,你不會再得到它了。計劃的解析器更改是導致此警告的原因,已被解僱。