0

有人可以解释为什么这是错误的吗?

object = Special::MyObject.new 'string' { "a block" }

我得到SyntaxError一个

.. { "a ...
    ^

它需要一个keyword_end

如果我删除块一切正常

4

2 回答 2

4

您不能将大括号 ( { ... }) 与不带括号的方法一起使用。您可以使用或do ... end添加(...。)

object = Special::MyObject.new('string') { "a block" }

object = Special::MyObject.new 'string' do
  "a block"
end
于 2011-12-05T18:35:39.740 回答
1
object = Special::MyObject.new('string') { "a block" }
于 2011-12-05T18:35:20.697 回答