需要对这些代码片段做一些很好的解释 - Ruby

时间:2011-08-04 17:51:15

标签: ruby-on-rails ruby

第一个

module A
  include B
  def initialize
     -----
  end
  def x
    ---------
    self << Y.new     # I need some explanation on this please
    --------
  end
end

第二个是

class H
  include G
  include F

  EE = [.,.,.,]
  def << k     # I need some explanation here
    k.id?
    -------
  end
end

有人可以帮帮我!我是整个编程的新手

1 个答案:

答案 0 :(得分:1)

在这两种情况下,<<都被用作运算符。

self << Y.new相当于self.send(:'<<', Y.new)所以例如如果self是Array,则会将Y.new推入其中。

在第二个示例中,您定义了运算符<<k是参数。