IT Share you

루비-고정 된 문자열을 수정할 수 없습니다 (TypeError).

shareyou 2020. 12. 11. 20:55
반응형

루비-고정 된 문자열을 수정할 수 없습니다 (TypeError).


알았어

... '[] =': 고정 된 문자열을 수정할 수 없습니다 (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'

Google이 정답을 찾는 데 너무 오래 걸렸기 때문에 ...

해야 할 일

arg_dup = ARGV[ 0 ].dup

Ruby 2.3에서 권장하는 방법은 단항 더하기 연산자사용하는 것이므로 문자열이 고정되면 중복 된 가변 문자열을 반환합니다.

+arg

참고 URL : https://stackoverflow.com/questions/2204945/ruby-cant-modify-frozen-string-typeerror

반응형