新手问题 求问此处是变量还是方法调用

scuwolf · 2013年10月23日 · 最后由 scuwolf 回复于 2013年10月23日 · 1620 次阅读

class Plugin

  def needs(*libraries)
    if libraries.empty?
      @needs ||= [ ]
    else
      needs.push(*libraries.flatten) # 这里needs是变量还是方法调用? 上下文中并没有找到有needs这个数组的初始化操作啊
    end
  end

end

明显方法调用,递归

#1 楼 @kikyous

哦,悟了。空参数的方法调用,初始化 @needs 这个实例变量为 [], 然后 push

擦,这写法好诡异...

需要 登录 后方可回复, 如果你还没有账号请 注册新账号