为什么以下代码不会引发错误:
Object.new.instance_eval { some_accessor_that_does_not_exist= "a value" }
正如您所料,以下内容会引发 NameError :
Object.new.instance_eval { some_method_that_doesnt_exist }
即使这样也会引发错误:
Object.new.instance_eval { self.some_accessor_that_does_not_exist= "a value" }
我已经在 1.8.7-p352 和 1.9.3-p194 上尝试过,结果相同。