定数の中身が書き換えられてしまう?

p1rubyで定数の中身が書き換えられてしまう?

>
$ irb
irb(main):001:0> TESTSTR=”apple orange”
=> “apple orange”
irb(main):002:0> teststr=TESTSTR
=> “apple orange”
irb(main):003:0> teststr.gsub!(‘apple’,’banana’)
=> “banana orange”
irb(main):004:0> TESTSTR
=> “banana orange”
<>
$ ruby -v
ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-freebsd6]
<>
$ irb
irb(main):001:0> TESTSTR=”apple orange”
=> “apple orange”
irb(main):002:0> TESTSTR.gsub!(‘apple’,’banana’)
=> “banana orange”
<>
irb(main):003:0> TESTSTR=”hogehoge”
(irb):3: warning: already initialized constant TESTSTR
=> “hogehoge”
<<
 つまり、オブジェクトごと置き換えようとしたときはエラーになるけど、オブジェクトの中身は変更可能ということでしょうか。うーん。
#しょうがないのでyahooメールでMLに入って相談することにした。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/43777

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です