我将如何在
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
希望这有帮助..