3

この例が失敗するのはなぜですか?

x = 100
y = 200

def my_method
  puts "Current x/y: #{x}, #{y}" # fails to find x and y
  x += 1 # fails to find x
  y += 1 # fails to find y
end
4

3 に答える 3

2

できますが、使用する変数のタイプによって異なります。5種類の変数があり、

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

ローカルのものを使用しようとしています。必要なことを行うために、グローバル変数、インスタンス変数、またはクラス変数を選択できます。

ローカル変数のスコープは、class、module、def、または do から対応する末尾まで、またはブロックの左中括弧からその右中括弧 {} までの範囲です。

それがあなたの例がうまくいかない理由です。

読むためにhttp://www.tutorialspoint.com/ruby/ruby_variables.htm

于 2013-11-12T21:20:19.803 に答える