いきなり変数を評価
なんのことを言っているのかというと、
class Jikken def jikken return @@jikken if @@jikken @@jikken=Time.now.to_i @@jikken end end j=Jikken.new p j.jikken
このコードを実行するとエラーが起きます。
@@jikken=nil
を入れて、以下のように書くとうまくいきます。
class Jikken def jikken return @@jikken if @@jikken @@jikken=Time.now.to_i @@jikken end @@jikken=nil end j=Jikken.new p j.jikken
どうもインスタンス変数以外は例外が起きてしまうようです。
知らなかった。
いきなり評価できた変数
いきなり評価すると例外が起きる変数
- aaa(ローカル変数)
- @@aaa(クラス変数)
- Aaa(定数)