[ruby-list:50649] クラス変数の共有について

From: Akret Node <node.akret@...>
Date: 2018-01-29 10:40:51 UTC
List: ruby-list #50649
のぐちです。

クラス変数について以前、メーリングリストで質問させていただきました。
頂いた回答ですと、「クラス変数は同じクラスに所属するもので情報を共有するためのもの」とのことでした。

クラスCで定義したクラス変数は見事に特異クラスでアクセス出来ておりますが
逆では上手く行っていないようにみえます。

これは挙動として正しいものでしょうか??


class C
end

C.class_variable_set :@@val_1, 100
C.singleton_class.class_variable_set :@@val_2, 200

p C.class_variable_get :@@val_1 # 100
p C.class_variable_get :@@val_2 # NameError !

p C.singleton_class.class_variable_get :@@val_1 # 100
p C.singleton_class.class_variable_get :@@val_2 # 200

In This Thread

Prev Next