【发布时间】:2015-10-04 16:36:49
【问题描述】:
我了解到您可以将整个代码块传递给 ruby 中的方法。这个块可以在方法中执行。我的问题是:它将有哪些上下文?它会像接收方法中的其他语句一样对待,还是像调用者方法中的语句一样对待?或者也许有特殊的第三种方式?
【问题讨论】:
我了解到您可以将整个代码块传递给 ruby 中的方法。这个块可以在方法中执行。我的问题是:它将有哪些上下文?它会像接收方法中的其他语句一样对待,还是像调用者方法中的语句一样对待?或者也许有特殊的第三种方式?
【问题讨论】:
instance_eval 在接收者的上下文中评估块。 class_eval 在接收器类的上下文中评估块。【讨论】:
foo = 2; [:a].each{p foo}。