Ruby在类之外创建实例变量
|
在任何类定义之外的文件中创建实例变量(例如“ 0”)是什么意思。假设有一个文件test.rb,文件的全部内容如下。
# test.rb
@foo = \"bar\"
puts @foo
它显示\"bar\"
,但这是某种包装类中的实例变量吗?
使用两个文件进行测试表明,存在一个main
对象,所有内容都包裹在其中。这种理解正确吗?
a.rb的内容
@me = self
@a = \"from-a\"
b.rb的内容
require \"./a\"
@b = \"from-b\"
puts @me == self # true (self refers to the same object)
puts self.class # Object
puts self.instance_variables # [@a, @b, @me]
没有找到相关结果
已邀请:
1 个回复
盟犯涩沟都
对象中,它是
的实例。 在文件中,如果您输入
,则会看到您正在
下操作,并且类别为
。 甚至在irb中,例如: