내가Objective C에서 if (object == nil)와 if (nil == object) 사이에 차이점이 있습니까?
if (object == nil)
향하다 것입니다하지만 몇 가지 튜토리얼
if (nil == object)
의 사용을 눈치 챘이 단지 스타일의 것입니다, 또는 두 형식을 사용하여 몇 가지 정당화 근거는 무엇입니까?
내가Objective C에서 if (object == nil)와 if (nil == object) 사이에 차이점이 있습니까?
if (object == nil)
향하다 것입니다하지만 몇 가지 튜토리얼
if (nil == object)
의 사용을 눈치 챘이 단지 스타일의 것입니다, 또는 두 형식을 사용하여 몇 가지 정당화 근거는 무엇입니까?
이는 일반적으로 비교 연산자 대신 할당 연산자를 사용하지 못하도록하기 위해 수행됩니다. 예를 들어 우연히 입력 한 경우 :
if (object = nil)
컴파일 될 수는 있지만 의도 한 바가 아닙니다.
두 번째 형식을 사용하면 잘못 입력하면 컴파일 타임 오류가 발생합니다. 할당시 왼쪽 피연산자로 사용할 수 없으므로 컴파일 오류가 발생합니다.
나는 객관적인 C 프로그래머가 아니지만,이 질문은 많은 언어에 일반적인 내용입니다.
확인. 그것은 나에게 첫눈을 안겨주는 마음이 충분하다면 (당신이 =를 타이핑 할 경우를 대비해서), 당신은 이미 double ==을하도록 상기시켰다. 감사. – Bill
사실 저는 보통 두 번째 형식을 고민하지 않지만 일부 사람들은 단지 안전하기를 선호하며 때로는 버그를 찾기가 어려울 때도 방지합니다. –
버전 == 대신 실수로 =를 넣을 경우에 대비하여 if (nil == object)
버전이 더 잘 보호합니다.
그냥 스타일이지만 @Jim은 오타가 발생할 경우 두 번째 옵션이 더 안전하다고 말합니다. – jamone