2013-03-12 2 views
0

나는 iOS xcode의 어리석은 초보자이다. 내가 객관적인 것을 배우고있을 때 C '자아.' 인터넷에서 다른 사람들의 예제 코드를 검색하는 동안 주로 사용됩니다. 그러나 우리가 이미 가치를 종합했을 때 그것은 '자기'가 있든 없든 똑같습니다. 안 그래요?왜 우리는 '자기'를 사용합니까? 값을 호출하기 전에?

특정 상황에서 자기가 사용되는시기가 궁금합니다. 제발 도와주세요.

+0

자기. 키워드가 자바의 'this'키워드와 비슷합니다. – iPatel

+2

틀렸어. iPatel –

+0

목표 C에서 '속성'을 먼저 배우십시오. 왜 우리가 자기를 사용하는지 쉽게 알 수 있습니다. –

답변

5

self.myProperty[self myProperty]의 줄임말입니다. 그래서 액세서 메소드를 사용하여 값을 검색합니다.

직접 ivar에 액세스 (self. 생략)는 동일하지 않습니다. 예를 들어 서브 클래스는 myProperty 메서드를 무시하고 반환 된 값을 변경할 수 있습니다. 또 다른 일반적인 경우는 게으른 초기화입니다. getter 속성은 첫 번째 액세스에서 값을 설정합니다.

+0

고맙습니다. 그것은 정말로 도움이되었다! – jazzed28

0

propertyinstance variable (또는 ivar)에 차이가 있습니다.

self.myVariable를 사용하여 당신은 당신이 바르로 작업 myVariable를 사용하여 특성으로 노력하고 있습니다. 여기서 기억해야 할 규칙은 "init 메소드의 경우를 제외하고 앱에서 절대 ivar으로 작업하지 마십시오"입니다. 초심자라면 코드에서 self을 사용하면됩니다.

+0

빠른 답변 주셔서 감사합니다! :) 나는 어디에서나 자기를 사용할 것입니다. – jazzed28

관련 문제