python, Javaを数年やっていて、Rubyを勉強中のエンジニアです。
少しRubyに慣れてきたところで疑問に感じた点がありました。
下記のように、if文でtrueになった時にローカル変数hoge
に文字列を
参照させるように書いたとします。
下記の例ではfalseに落ちるので、test関数を実行してもローカル変数hoge
は
初期化されず、NameErrorになるような気がするのですが、実際にはnilが
返ってきます。
def test if 1 == 2 hoge = "文字列" end p hoge end
pythonとかですと、elseまで書かないとエラーになるのですが、Rubyでは
elseを書かなった場合でも、ロカール変数の初期化がされているのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/11/17 03:42
2015/11/17 04:04
2015/11/17 04:11
2015/11/26 16:27