rubyの関数実行の話し

2019年6月28日 0 By ryosuke-hujisawa

なんでこんなことに気がつかなかったんだろう。

関数の外側にハッシュを初期化して、関数の引数にハッシュを渡して、関数の中で、引数に値を代入する。そうすれば、関数の外側で初期化してるハッシュが膨らむじゃん。

関数の中で引数に値が代入されているけど、最終的に、この値どこにも使われてなくない?って思っちゃった。

いや、使われているのは、関数の中の引数に代入されてる値ではなくて、関数の外側に定義されている変数(ハッシュ)だった。

test = {}
def Test(t)
   t["test"] = "Hello World" 
end

Test(test)
p test

#{"test"=>"Hello World"}

 

自分は頭悪いなあってつくづく思ってる。自分は頭悪いなあって思うけど、開き直らず頑張ろう。