所以我知道你可以通過調用#instance_variables
來獲得Ruby中的所有實例變量,但是如果它們還沒有被設置,那麼它們就不會顯示出來。在ruby中獲取attr_accessor /實例變量
例
class Walrus
attr_accessor :flippers, :tusks
end
w = Walrus.new
w.instance_variables # => []
w.tusks # => nil
w.instance_variables # => [:@tusks]
我要訪問所有attr_accessor立即定義的實例變量。
w = Walrus.new
w.instance_variables # => [:@tusks, :@flippers]
的可能重複[如何打通ATTR \ _reader或ATTR \ _accessor中定義的屬性(http://stackoverflow.com/questions/10006889/how-to-get-attributes-that-were -defined貫通ATTR閱讀器 - 或ATTR存取器) –