有一种方法如下:
def some_thing(user)
x = user.age
y = user.height
end
我有一个看起来像的对象:
x = other.info[0]
y = other.info[1]
我怎样才能将这些信息传递给方法some_thing?
some_thing(other)
不起作用,因为它没有以这种方式暴露属性。
是否可以不修改类和方法参数?
答案 0 :(得分:2)
创建匿名Struct
以创建属性并使用Array
splat填充它们:
some_thing(Struct.new(:age, :height).new(*other.info))