Ruby:如何在函数调用中更改参数的值?

前端之家收集整理的这篇文章主要介绍了Ruby:如何在函数调用中更改参数的值?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我将如何在 Ruby中引用一个函数,如下所示?
change_me! (val)

更新:

我打算做的是这样的:

def change_me! (val)
  val = val.chop while val.end_with? '#' or val.end_with? '/'
end

这刚刚结束了….

change_me! 'test#///'     => "test#///"

解决方法

你在想这个错误方法.虽然可能在Ruby中做到这一点,但这将是非常复杂的.这样做的正确方法是:
val.change_me!

当然,这取决于你想改变什么的类别.关键是,按照惯例,使用’!’影响它们被调用的类实例.
所以…

class Changeable
  def initialize var
    @var = var
  end

  def change_me! change=1
    @var += change
  end
end

a = Changeable.new 5 # => New object "Changeable",value 5
a.change_me! 6 # => @var = 7
a.change_me! # => @var = 8

希望这有帮助..

原文链接:https://www.f2er.com/ruby/265998.html

猜你在找的Ruby相关文章