上級 › dup はfreeze状態を引き継がない(clone との違い) › パターン4
dup はfreeze状態を引き継がない(clone との違い)
freezeしたオブジェクトをdupで複製すると、複製後のオブジェクトはfreezeされていない通常の状態になります。
1 original = "key".freeze 2 copy = original._____ ^ 3 copy << "-2" 4 puts copy
main.rb:3:in `<main>': can't modify frozen String: "key" (FrozenError)
空欄を埋めて実行を通す
複製したオブジェクトを書き換えたいという目的がはっきりしているなら、cloneではなくdupを選びます。
次の問題