【Ruby】printメソッドに引数を渡さなくても出力できる理由。 グローバル変数$_
IO#gets、readline は読み込んだ文字列を変数 $_ にセットする。
printは引数が省略されると$_ を使う。
→p puts は$_ を使わない模様。
p $_ #<=nil $_の値のセットはget(readline)実行後 while DATA.gets do p $_ print #<= 引数なしだと$_を出力 end __END__ hoge huge
■実行結果
nil "hoge\n" hoge "huge\n" huge "\n"