【发布时间】:2011-03-30 01:56:03
【问题描述】:
class C
end
var = "I am a local var outside"
C.class_eval do
def self.a_class_method
puts var
end
end
我知道,这是不正确的,因为 def 创建了一个新范围。
我也知道使用define_method可以创建实例方法而不创建新的作用域,但我的重点是如何定义一个类方法。
【问题讨论】:
标签: ruby dynamic closures class-method local-variables