Simpleエンジニア

システム開発の備忘録

[Ruby] ハッシュ(Hash)のコピーは参照渡し(ポインタをコピー)

2010年03月10日 18時26分25秒 | Ruby
ハッシュをコピーするときは気をつけよう。

hash1 = Hash.new
hash1[a] = "bc"
hash2 = hash1   # ※1
hash1[a] = "d"
puts hash2[a]  #  d と表示される


解決方法
※1の行を、
hash2 = hash1.clone
としよう。(またはdup)


最新の画像もっと見る

コメントを投稿