fc2ブログ

2023.09 «  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 - - - - » 2023.11
TOP > 定数や変数の実験・その3【ローカル変数の実験】

 ← 定数や変数の実験・その4【インスタンス変数の実験】 | TOP | 定数や変数の実験・その2【グローバル変数の実験】

定数や変数の実験・その3【ローカル変数の実験】 

2007年08月26日 ()
シリーズもので Ruby の変数や定数の実験をしています。

1.定数の実験
2.グローバル変数の実験
3.ローカル変数の実験
4.インスタンス変数
5.クラス変数の実験

今回は、3.ローカル変数の実験の実験をしてみました。


ローカル変数の実験1

hensu = 'hensu_data'
hensu = 'hensu_data_new' # もちろん値を書き換えられる

class MyClass
  hensu = 'hensu_data_in_class'
  def method1
    p hensu
  end
  def method2
    hensu = 'hensu_data_in_method'
    p hensu
  end
end

p hensu # -> "hensu_data_new"

my_instance = MyClass.new
my_instance.method1 # -> ERRORになってここで止まってしまう。method1 のブロックには hensu が定義されていませんから。
my_instance.method2 # -> "hensu_data_in_method"

p hensu # -> "hensu_data_new"




ローカル変数の実験2

3.times do
  p defined?(hensu) # -> nil ※注:何回目のループでも常に定義されていない(nil)扱い。
  hensu = 'hensu_data'
  p defined?(hensu) # -> "local-variable(in-block)" ※注:1行前で定義されたのでこういう結果になる。
end




Ruby の変数や定数の命名規則は、こちらからどうぞ。

【広告】

[2007.08.26(Sun) 20:32] Rubyの文法Trackback(0) | Comments(0)
↑TOPへ

 ← 定数や変数の実験・その4【インスタンス変数の実験】 | TOP | 定数や変数の実験・その2【グローバル変数の実験】

COMMENT

COMMENT POST















管理者にだけ表示

 ← 定数や変数の実験・その4【インスタンス変数の実験】 | TOP | 定数や変数の実験・その2【グローバル変数の実験】