2012-02-28 8 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)に直接入力され、あなたの実際の問題を解決するために*実数*のコードが必要であることを証明しています) –

答えて

2

あなたはこれを行うことができます。

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

self.class.class_variable_get :@@var 

しかし、私はあなたが実際にシングルトンクラスのクラス変数を使用する必要があることは本当に懐疑的です。それは複雑に思えます。あなたが本当にやろうとしていることを説明する別の質問をすることもできます。

+0

あなたの返信ありがとう... – JoMojo

+0

申し訳ありません私の最後の投稿のために...まだどのようにサイトを使用するかを学ぶ。しかし、はい、両方の権利は私がしようとしていることはより複雑ですが、私は質問を簡素化しようとしていた。特に私はRubuyの新聞、クラス、そして一般的なプログラミングです。 :)私が実際にやっていることは、Sketchupのプラグインを書くことです。私が最初に持っていなければならないコードは、クラス<< selfにあり、クラスツールという新しいクラスを追加しています。クラス<<自己。私はそれが助けて欲しい – JoMojo