得到
... '[]=':无法修改冻结字符串(TypeError)
当我试图修改我认为是ARGV的副本时。
每一个都有相同的结果
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'
发布于 2010-02-05 11:57:05
由于谷歌花了太长时间才找到正确的答案...
需要做的事情
arg_dup = ARGV[ 0 ].dup
发布于 2018-10-22 20:39:20
因为Ruby2.3推荐的方法是use the unary plus operator,所以如果一个字符串被冻结,它将返回一个重复的可变字符串。
+arg
https://stackoverflow.com/questions/2204945
复制相似问题