我想爲對象定義新的getter方法。下面是我在irb
正在寫代碼:無法在Ruby中的本徵類中定義getter方法
> eigenclass = class << self; self; end
> eigenclass.class_eval { attr_reader :foo }
我想,這個代碼應添加foo
方法自我對象。但接下來的線條說不同
puts foo
=> nil
foo = 1
=> 1 #Why is there no exception?
puts foo
=> 1
puts @foo
=> nil
這是爲什麼?
你不需要自定義'eigenclass'。已經有'singleton_class'了。 – sawa