2015-11-27 45 views
-2
class A 
@i = 2 
end 

class B 
puts @i 
end 

這些是兩個類,分別位於不同的文件a.rb和b.rb中。我想在B類打印@i有人能幫助我與2個不同的A和B類。變量在類A中聲明。我想要獲取B中變量的值。

+0

試試看: http://ruby-doc.org/docs/Tutorial/ –

+0

你的問題是什麼? – mudasobwa

+0

我的問題是我如何可以將另一個類的變量的值打印到其他類中。我應該使用什麼要求,加載,包括。 – tanay

回答

0

b.rb

require_relative 'a' 

class B 
    puts A.instance_variable_get(:@i) 
end 

執行文件,你會得到輸出:

ruby b.rb 
#=> 2 
+1

如果這是您的問題的解決方案,請將其標記爲答案。 – Tobias

2

我建議你在考慮Ruby的黑魔法之前考慮傳統的方式。

class A 
    @i = 2 
    def self.i 
    @i 
    end 
end 

class B 
    puts A.i #=> 2 
end 

如果暴露A的成員是實在令人難以接受,然後去安德烈傑伊涅科的解決方案。

相關問題