2
如何編寫initalizer()方法來形成實例變量(空或否),然後遍歷一組參數以設置實例變量?使用可選參數的Ruby對象初始化
這是我想到的是:
def initialize(*p)
@sid = "123asdf654"
@token = "abc123"
@bert = "1192875119"
@me = "4165551212"
@media_url = ""
@message = ""
args.each do |k,v|
instance_variable_set("@#{k}", v) unless v.nil?
end
end
我希望有組已知實例變量(如圖所示)的能力,然後通過ARGS迭代,要麼更新所選實例變量的值,或創建新的。
最後一個似乎是最合法的,因爲它有多直接,如果我有違約。 –
@Rich_F如果您不關心任何類型的Ruby 1.9兼容性,那麼我建議這樣做。因爲這已經結束了,你應該很好。 – tadman
更關心抽象應用程序,或者在實例化時拋棄對象的新屬性而不是使用attr_accessor的一般方法。一步創造比兩個更好。 –