class A
@i = 2
end
class B
puts @i
end
這些是兩個類,分別位於不同的文件a.rb和b.rb中。我想在B類打印@i有人能幫助我與2個不同的A和B類。變量在類A中聲明。我想要獲取B中變量的值。
class A
@i = 2
end
class B
puts @i
end
這些是兩個類,分別位於不同的文件a.rb和b.rb中。我想在B類打印@i有人能幫助我與2個不同的A和B類。變量在類A中聲明。我想要獲取B中變量的值。
b.rb
:
require_relative 'a'
class B
puts A.instance_variable_get(:@i)
end
執行文件,你會得到輸出:
ruby b.rb
#=> 2
如果這是您的問題的解決方案,請將其標記爲答案。 – Tobias
我建議你在考慮Ruby的黑魔法之前考慮傳統的方式。
class A
@i = 2
def self.i
@i
end
end
class B
puts A.i #=> 2
end
如果暴露A
的成員是實在令人難以接受,然後去安德烈傑伊涅科的解決方案。
試試看: http://ruby-doc.org/docs/Tutorial/ –
你的問題是什麼? – mudasobwa
我的問題是我如何可以將另一個類的變量的值打印到其他類中。我應該使用什麼要求,加載,包括。 – tanay