- 151 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 08:07:50 ]
- dup では「済まない」から>>144ではわざわざ1つネストした map の中で dup してるのだろ
dup で済むというのは arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] arr2 = arr.dup arr2.each{|a| a[1] *=2} p arr これが [[1, 2, 3], [4, 5, 6], [7, 8, 9]] を表示するようなことを言う ネストした配列のような参照だらけのオブジェクトの完全な複製を作る手段は プリミティブなオブジェクトを見つけるまで深く潜って dup することだが これをほぼどんなオブジェクトに対しても自動で(結果として)行う一般的な手法が dump して load 事前情報(配列の配列の要素がプリミティブである)を利用して決め打ちで手動で行ったのが>>144 そんだけ どちらも特段変ではない 初心者向けでないとして突っ込みが入ったのは for と定数のほうだな
|

|