- Ruby 初心者スレッド Part 56©2ch.net
422 :デフォルトの名無しさん[sage]:2015/01/20(火) 18:09:03.35 ID:bOdKTSkA - >>417
例えば ary = ("A".."D").to_a ary2 = ary.dup ary2[0] += "B" だとary2だけ変更されるけど ary2[0] << "B" とか ary2[0].downcase! だと両方変更される この時、aryとary2は別の配列オブジェクトだけど、それで参照される要素は同じオブジェクトだから 代入なら一方だけしか変更されないけど、参照されるオブジェクトの破壊的メソッドを呼び出すと両方変更される 定数が定数じゃないのはrubyの仕様
|