2

行番号 6 でエラーが発生します。Ruby インタープリターが認識しないグローバル変数を出力しようとしました。何故ですか ?どうすればこれを変更できますか?

localVar = "Local Variable"
$globalVar = "Global Variable"
puts(localVar)
def func
puts("From the function func")
puts(globalVar) #line 6
end

def changer
globalVar = "New Global Var"
puts("New Global Var : #{globalVar}")
end
func #Call the function func
changer #Call the function changer

出力:

Local Variable
From the function func
global.rb:6:in `func': undefined local variable or method `globalVar' for main:Object (NameError)
    from global.rb:13:in `<main>'
4

3 に答える 3

3

$変数名の前に毎回を置く必要があります。

puts($globalVar) #line 6
于 2012-06-11T06:17:10.407 に答える
1

これでうまくいきます。$ は変数名の一部です。

puts($globalVar) 
于 2012-06-11T06:43:24.407 に答える