一个问题 Adder.class_eval
在一个类 Adder里的一个函数s = "def " + name
s += ' ;' #这行改成 s += '\n' 为什么就不行了????????????????????????
s += ' return @i + '
s +=digits
s += ' end'
Adder.class_eval(s) 因为s是一个string目标,它被eval执行。
class的这个eval在编译时不区分换行,而是用";"作为本条statement的结束符号。 回复 2# zuerrong
祖儿又捡起了RB了? 楼上,新来的?
页:
[1]