如何创建对Ruby方法的引用,以便以后执行?

时间:2014-09-28 04:07:42

标签: ruby methods reference

我想在Ruby中执行以下操作:

  1. 创建一个包含方法的类 1.5创建类的实例
  2. 在实例
  3. 中创建对方法的引用
  4. 稍后执行该方法
  5. 这样的事情:

    class Cat
      def meow
        puts "meow"
      end
    end
    
    my_cat = Cat.new
    portable_meow = my_cat.method("meow")
    portable_meow.execute
    # outputs "meow"
    

2 个答案:

答案 0 :(得分:0)

使用execute

而不是call,而不是portable_meow.call
{{1}}

答案 1 :(得分:0)

这两种解决方案都有效。感谢大家的快速回复。 (对不起,我真的无法弄清楚如何让我的代码在下面正确格式化,但你明白了。) - 马特

class Catz
  def meow
    "meow"
  end
end

my_cat = Catz.new
test = my_cat.method(:meow)
puts test.call

my_cat2 = Catz.new
test = my_cat2.method("meow")
puts test.call