From: gotoken@... (GOTO Kentaro) Date: 2000-07-20T17:40:09+09:00 Subject: [ruby-list:23935] Re: loop 中での File の使いかた In message "[ruby-list:23934] loop 中での File の使いかた" on 00/07/20, Kengo Nakajima writes: >こんなコードを書いていました。(簡単にしてあります) > >[ "hoge" , "moge" ].each{ |i| > OUT = File.open( i, "w" ) > OUT.printf( "hogehoge\n" ) > OUT.close >} > >これを実行すると、2回目のループで、 >"warning: already initialized constant OUT" >という警告がでます。 > >この警告を出なくしたいのですが、方法がよくわかりません。 >こういうコーディング方法自体が間違っているのでしょうか? OUT は大文字で始まるので定数です。そのため2回目以降の代入で 警告されます。次が警告されるのと同じ理由です。 OUT = 1 OUT = 2 OUTを小文字の out にするとローカル変数になりますから警告され ません。 -- gotoken