50
... '[] =':不能修改凍結的字符串(類型錯誤)
試圖修改什麼時候我以爲是ARGV [0]的副本。
爲每個
arg = ARGV[ 0 ]
arg_cloned = ARGV[ 0 ].clone
arg_to_s = ARGV[ 0 ].to_s
arg[ 'x' ] = 'y'
arg_cloned[ 'x' ] = 'y'
arg_to_s[ 'x' ] = 'y'
... '[] =':不能修改凍結的字符串(類型錯誤)
試圖修改什麼時候我以爲是ARGV [0]的副本。
爲每個
arg = ARGV[ 0 ]
arg_cloned = ARGV[ 0 ].clone
arg_to_s = ARGV[ 0 ].to_s
arg[ 'x' ] = 'y'
arg_cloned[ 'x' ] = 'y'
arg_to_s[ 'x' ] = 'y'
相同的結果,因爲谷歌花了太長時間來找到正確的答案...
做
arg_dup = ARGV[ 0 ].dup
權需要。克隆複製對象的整個狀態,包括凍結狀態。 Dup複製對象的肉,沒有其他標誌。 – Eli 2010-02-05 04:04:53
相當驚訝.to_s也一樣(包括凍結)!? – Straff 2010-02-05 10:08:08
從發佈您的問題開始,到搜索谷歌並且不滿發佈您的答案太長時間了? :) – vgoff 2013-10-03 21:54:24