IOS swift if let a = b 可以通过a改变b的值么?,请大神解释解释
巴扎黑
巴扎黑 2017-04-17 17:53:47
0
4
237

如图为啥,为啥显示是这不科学呢,我觉得应该显示科学才对,莫非label和myLabel是绑定在一起的?

巴扎黑
巴扎黑

모든 응답(4)
刘奇

Swift의 클래스는 실제로 포인터인 참조 유형이며 myLabel은 메모리 주소를 가리키므로 동일한 내용이 변경됩니다.
단지 myLabel 포인터는 자신이 가리키는 주소를 변경할 수 없습니다.
myLabel === label을 사용하여 주소가 동일한지 확인할 수 있습니다.

Ty80

labelmyLabel은 동일한 객체를 참조하며, label.text = “xx”myLabel.text = “yy”는 모두 해당 객체의 text 속성을 ​​설정합니다.

Peter_Zhu

Swift에서 값 유형의 전송은 모두 복사이고, 참조 유형의 전송은 모두 주소입니다

左手右手慢动作

위의 세 분께 감사드립니다.
struct 및 enum은 값 유형(복사 값 전달)입니다. 클래스 인스턴스 객체는 참조 유형(전달 포인터)입니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿