如何从Ruby中的方法返回接收器?
我知道我可以使用如何从Ruby中的方法返回接收器?,ruby,oop,Ruby,Oop,我知道我可以使用\uuuu method\uuu返回方法的名称: def foo __method__ end 但是如何返回该方法所附加的对象?例如: class Integer def foo # code end end 1.foo #=> 1 self指的是对象本身: class Fixnum def foo self end end self指的是对象本身: class Fixnum def foo self en
\uuuu method\uuu
返回方法的名称:
def foo
__method__
end
但是如何返回该方法所附加的对象?例如:
class Integer
def foo
# code
end
end
1.foo
#=> 1
self
指的是对象本身:
class Fixnum
def foo
self
end
end
self
指的是对象本身:
class Fixnum
def foo
self
end
end
只需返回<代码>自我>代码>注意<代码> FixNum < /Cord>被禁止-它现在都是代码>整数< /代码>。如果你的方法只返回自我,你可能会考虑不调用任何方法:<代码> 1=>1”< /Cord> >我需要在方法的主体中计算这个值。谢谢,伙计们,愚蠢的问题=(@zOs0经验法则:不要对Ruby的核心类(或者你通常不拥有的类)进行猴子补丁)在艺龙网,它可能看起来很优雅,但从长远来看,它经常会造成很多痛苦。只要返回<代码>“自我/代码>”,注意<代码> FixNum < /C> >—它都是代码>整数< /代码>。如果您的方法只返回自我,您可能会考虑不调用任何方法:<代码> 1×=> 1。我需要这个值来计算方法体。谢谢你们,伙计们,这是一个愚蠢的问题=(@zOs0经验法则:不要对Ruby的核心类(或者你们一般不拥有的类)进行修补)一开始可能看起来很优雅,但从长远来看常常会引起很多痛苦。@ ZOS0考虑接受答案,在回答的分数下有一个符号“代码> V < /代码>。@ ZOS0考虑接受答案,在答案的分数下有一个符号“代码> V<代码>。