目前我正在阅读The Ruby Programming Language
并且在许多地方提到self
,我无法理解它的确切用途。它的行为是否类似于C ++中的this
指针。这两者有什么区别?(我一般不会询问指针解引用或任何特定于C ++的东西)我们什么时候使用self.something
我们的红宝石代码?
答案 0 :(得分:3)
self
是一个变量,指向当前代码所在范围内的对象。在该对象上调用类方法时,可以使用self.something
。
例如,如果您有以下方法:
class Foo
def self.bar
puts "Class method!"
end
end
您可以通过调用bar
来调用Foo.bar
方法。