上級 › dup はfreeze状態を引き継がない(clone との違い) › パターン1
dup はfreeze状態を引き継がない(clone との違い)
freezeしたオブジェクトをdupで複製すると、複製後のオブジェクトはfreezeされていない通常の状態になります。
1 original = "secret".freeze 2 copy = original._____ ^ 3 copy << "!" 4 puts copy
main.rb:3:in `<main>': can't modify frozen String: "secret" (FrozenError)
空欄を埋めて実行を通す
cloneはfreeze状態も含めて複製するため、複製後も凍結されたままです。中身を変更したいならdupを使う必要があります。
次の問題