2012-02-28 93 views
1

我無法弄清楚如何從另一個類訪問class << self中的變量。我已經搜查,發現接近這一點,但不完全是許多問題:Ruby類<<自變量,從另一個類訪問

class << self 
    @@var="foo" 
end 

class A 
    puts @@var 
end 

我甚至試過,沒有運氣內class << self創建A類兩種。 如何訪問@@var

+0

這看起來像[XY問題](http://meta.stackexchange.com/a/66378)。你沒有真正給我們足夠的上下文去理解你實際想要解決的問題。請幫助我們瞭解全局,並向我們展示您正在嘗試工作的實際代碼。 (順便說一句,你的示例代碼可以很好地直接輸入到'irb'(Ruby 1.9.2)中,進一步證明我們需要*真實代碼來幫助你解決實際問題。) – 2012-02-28 16:33:34

回答

2

你可以這樣做:

class << self 
    @@var="foo" 
end 

self.class.class_variable_get :@@var 

但我真的很懷疑,你實際上需要在一個單獨的類使用類變量。看起來很複雜。也許你可以提出另一個問題來解釋你真正想做的事情。

+0

感謝您的回覆... – JoMojo 2012-02-28 17:04:31

+0

對不起爲我的最後一篇文章...仍在學習如何使用該網站。但是,你是對的,我想要做的更復雜,但我試圖簡化問題。特別是因爲我是rubuy,班級和編程的一個新手。 :)我實際上在做的是爲Sketchup寫一個插件,我必須開始的代碼駐留在類<< self中,我添加了一個名爲class Tool的新類,我需要訪問駐留在內部的一些變量類「自我」。我希望有所幫助。 – JoMojo 2012-02-28 17:16:21