试图创建对象和由红宝石发送方法传递多个参数
Object.const_get(class_name).new.send(method_name,parameters_array)
动态调用方法,其工作正常时
Object.const_get(RandomClass).new.send(i_take_arguments,[10.0])
但投掷错误的参数数目1 2
Object.const_get(RandomClass).new.send(i_take_multiple_arguments,[25.0,26.0])
定义的随机类是
class RandomClass
def i_am_method_one
puts "I am method 1"
end
def i_take_arguments(a)
puts "the argument passed is #{a}"
end
def i_take_multiple_arguments(b,c)
puts "the arguments passed are #{b} and #{c}"
end
end
有人可以帮助我如何发送多发参数红宝石方法动态
可能值得注意的是,在这种情况下'*'是“splat”操作符。 –