2012-02-28 95 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