ruby – 不能修改冻结的string(TypeError)

得到

…'[] =':不能修改冻结的string(TypeError)

当试图修改我认为是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' 

因为谷歌花了太久才find正确的答案…

需要做的

 arg_dup = ARGV[ 0 ].dup