2015-02-05 2 views
0

에 대한 읽기 전용 속성의 효과는 I는 아래의 목표 - C 클래스를 선언, 내 상황 , 컴파일러는 "_childItems"식별자를 선언하지 않은 것으로, "- (NSArray *) childItem"을 "childItem"속성의 getter 함수로 사용할 수없는 것으로 보입니다. (함수 이름을 변경하면 모든 것이 잘됩니다. ? "readonly"속성을 사용하면 xcode가 속성의 설정 기능을 생략하지만 getter 기능에는 어떤 영향이 있습니까? 코드의 문제는 당신이 당신의 읽기 전용 속성에 대한 게터을 구현 간단하게 될 것이다 모든 필요한 접근 방법을 구현 경우 속성이 자동으로 합성되지 않는 것입니다 때문에은 오브젝티브 C의 @property 지시자 여기

답변

2

...

@synthesize childItems = _childItems; 

및 오류 멀리 가야한다 :

은 @implementation 후 다음과 같은 추가 "당신이 READWRITE 속성의 getter와 세터를 모두 구현하는 경우, 또는 readonly 속성에 대한 getter를 사용하면 컴파일러는 속성 구현을 제어하고 인스턴스 변수를 자동으로 합성하지 않는다고 가정합니다. "

일반적인 접근 방식은 헤더에 "readonly"속성을 넣고없이 "readonly"속성없이 클래스 확장 에 중복 된 속성 정의를 넣는 것입니다.

1

엑스 코드가 뿌려줍니다. 애플의 문서에서

+0

아 ... tks David, 대답은 매우 분명합니다 .-) – Qing

+0

여러분을 환영합니다! –