다음은 스위프트에서 작동하지 않는 이유는 무엇입니까?스위프트 === with nil
if someObject === nil {
}
당신은 내가 그 === 더 인스턴스를 확인하는 것 같았다 생각과 같은
if someObject == nil {
}
== 연산자를 사용하여 테스트를해야 할 곳 (기본적으로 포인터를 비교하는 동일한)와 == isEqual 체크와 비슷했다. 따라서 나는 ===에 대한 테스트에 더 적합 할 것이라고 생각 하겠지만 분명히 틀렸다.
문서 상태 :
=== 또는 "은 동일한이"두 상수 또는 클래스 타입의 변수 똑같은 클래스 인스턴스를 참조한다는 것을 의미한다.
== 또는 "같음을"개의 경우가 고려된다는 것을 의미
다음은 나를 위해 작동'class Person {} let p = Person() q : Person을 보자. = nil println (p === nil) println (q === nil)' –
개체의 값은 nil이고 nil과 동일한 개체는 참조하지 않습니다. 이는 의미입니다. – milesper