Ruby 2个不同的类别A和B。变量是在类A中声明的。我想获取B中变量的值
这是不同文件a.rb和b.rb中的两个类。我想在B班打印@I。有人能帮我吗Ruby 2个不同的类别A和B。变量是在类A中声明的。我想获取B中变量的值,ruby,class,inheritance,Ruby,Class,Inheritance,这是不同文件a.rb和b.rb中的两个类。我想在B班打印@I。有人能帮我吗 class A @i = 2 end class B puts @i end 执行该文件,您将获得以下输出: require_relative 'a' class B puts A.instance_variable_get(:@i) end 我建议你在去露比的黑魔法之前考虑传统的方式。< /P> ruby b.rb #=> 2 如果暴露一个的成员确实是不可接受的,那么就采用Andrey Deinek
class A
@i = 2
end
class B
puts @i
end
执行该文件,您将获得以下输出:
require_relative 'a'
class B
puts A.instance_variable_get(:@i)
end
我建议你在去露比的黑魔法之前考虑传统的方式。< /P>
ruby b.rb
#=> 2
如果暴露
一个的成员确实是不可接受的,那么就采用Andrey Deineko的解决方案。试试看:你的问题是什么?我的问题是如何将另一个类的变量的值打印到另一个类中。我应该使用什么?要求、加载、包括。如果这是您问题的解决方案,请将其标记为答案。
class A
@i = 2
def self.i
@i
end
end
class B
puts A.i #=> 2
end