所以,我希望能夠撥打電話參數到Ruby中的實例方法
x = MyClass.new('good morning', 'good afternoon', 'good evening', 'good night',
['hello', 'goodbye'])
,將方法添加到其值的參數值的類。所以現在:
p x.methods #> [m_greeting, a_greeting, e_greeting, n_greeting,
r_greeting, ...]
而且
p x.m_greeting #> "good morning"
p x.r_greeting #> ['hello', 'goodbye']
我意識到這是某種變量是做什麼的實例(和,如果我想他們一成不變我可以讓他們凍結的常量),但原因超出我的控制範圍,我需要改變方法。
謝謝!
BTW:我想
def initialize(*args)
i = 0
%w[m_a, m_b, m_c].each do |a|
self.class.send(:define_method, a.to_s, Proc.new { args[i] })
i+=1
end
end
但是,最終讓每一個方法的最後一個參數的值。
啊我在打字時發貼; \ – 2010-05-08 15:44:06