변수 할당
답변
나는 Ruby가 일반적인 유형의 같은 연쇄 할당 :
a = b = c = d = 'foo'
이것은 메모리의 동일한 실제 문자열에있는 모든 변수를 가리 키므로주의하십시오. 그래서 만약 당신이 'a.reverse'를했다면 a, b, c, d는 모두 'oof'가됩니다. – PreciousBodilyFluids
+1 중요한 경고 – allesklar
a = b = c = d = 'foo'
반드시 그것을 할 ... 올바른 방법 당신은 약간에게 이상한 방법을 원하는 경우 : {foo는}w
a,b,c,d = %w{foo}*4
(퍼센트를 foo, * 4이 포함 된 문자열 배열을 반환하므로 문자열이 foo 인 배열을 4 회 포함 할 수 있습니다. 쉼표로 구분 된 여러 변수 이름을 배열)을 할당하는
이것은 안전한 방법으로 보인다
a, b, c, d = 4.times.map{'foo'}
이것은 유사하며 조금이라도 짧은 :
가a, b, c, d = (1..4).map{'foo'}
그것은있을 수도 배열 승수 나 연결 할당을 사용하는 것보다 오래 걸리지 만 동일한 객체에 대한 다른 참조가 아닌 실제로는 다른 객체를 얻습니다.
확인 코드 : object_id
들 같은 경우
[a,b,c,d].map(&:object_id)
, 당신의 변수가 같은 객체를 참조하고, 뮤 테이터 방법 (예를 들어, sub!
)는 4 개 변수가 표시되는 내용에 영향을 미칠 것입니다. 서로 다르다면 다른 사람에게 영향을 미치지 않고 하나를 돌연변이시킬 수 있습니다.
- 1. 변수 메모리 할당
- 2. DetailsView에 세션 변수 할당
- 3. 할당 변수 [모범 사례?]
- 4. Actionscript - 참조없는 변수 할당?
- 5. 인스턴스 변수 할당?
- 6. 스플릿에서 변수 할당
- 7. 메이플 13 변수 할당
- 8. lua - 변수 할당 할당하기
- 9. 유닉스 : 명령에 변수 할당
- 10. iPhone : 인스턴스 변수 재 할당 = 할당 취소?
- 11. .net의 정적 변수 할당 시간
- 12. PHP 클래스 변수 재 할당
- 13. Ruby : Object.send를 사용하여 변수 할당
- 14. 동적 언어 및 변수 할당
- 15. 변수 할당 및 결과 표시
- 16. 중첩 루프 질문에서 변수 할당
- 17. 문자열 할당 및 인스턴스 변수
- 18. Objective-C 멤버 변수 할당?
- 19. 스팅 데이터를 기반으로 변수 할당
- 20. 변수 자체를 할당 할 수있는 할당 문의 효율성 문제
- 21. mysql 변수 할당 : 강제로 할당 순서를 지정하는 방법?
- 22. 자바 스크립트 값에 대한 변수 할당
- 23. 클래스의 변수/상수로 동적 값 할당
- 24. 액션 스크립트 3 - 파일로드시 변수 할당
- 25. 조건부 일 경우 PHP 변수 할당
- 26. 스마티 : 내 템플릿에 할당 된 변수
- 27. 자바 : 사용자 입력을 기반으로 배열에 할당 변수
- 28. 선택한 행의 값을 변수 iphone SDK에 할당
- 29. 튜플 매개 변수 선언과 할당 이상한
- 30. 속성 변수 할당 줄에 경고를 표시하는 분석기
또한 : 'a, b, c, d = [ "foo"] * 4' –