4

我正在做的是:

class Foo
  alias_method :__bar__,:bar
  def bar(*arg)
    #do something
    __bar__(*arg)
  end
end

这是正确的方法吗?

或者最好弄清楚原始方法有多少必需的、可选的、块参数,并编写完全相同数量的参数?

4

1 回答 1

3

使用 slurpy arg 是正确的方法,但您还应该处理任何块参数:

class Foo
  alias_method :__bar__,:bar
  def bar(*arg, &block)
    #do something
    __bar__(*arg, &block)
  end
end
于 2012-04-22T23:46:57.707 回答