在构造函数中,您经常希望将参数转换为实例变量。一种天真的方法是:
class A
def initialize a, b, c
@a, @b, @c = a, b, c
end
end
但更简单的方法是:
class A
def initialize *args
@a, @b, @c = args
end
end
但我担心代码的速度,因为看起来后面的代码正在创建一个args
在前面的代码中没有创建的额外数组。从速度或效率的角度来看,是坚持前者而不使用后者更好,还是没有区别?