gpt4 book ai didi

ruby - @ 在 self 方法中使用到底是做什么的?

转载 作者:数据小太阳 更新时间:2023-10-29 07:43:32 25 4
gpt4 key购买 nike

我今天在一些代码中看到了这一点。

class Foo
def self.bar
@myvar = 'x'
end
end

这到底是在访问什么?据我所知,这是不可访问的表单实例方法。这叫什么(谷歌搜索),因为我似乎无法在其他任何地方找到这方面的例子。

最佳答案

@myvar 语法将 myvar 标识为实例变量,因此真正的问题是:

What is self inside a class method?

答案是“self 是类对象”。所以,@myvarFoo 类对象的一个​​实例变量。如果添加另一个类方法:

class Foo
def self.pancakes_house
@myvar
end
end

然后这样做:

Foo.bar
puts Foo.pancakes_house

您将在标准输出中看到 x

关于ruby - @ 在 self 方法中使用到底是做什么的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6365417/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com