은 다음 속성 선언에 어떤 영향이 있는지 알고 싶습니다. 수동으로 구현 된 설정자가 변수를 보유합니다.setter를 수동으로 구현하려면 (보유) 필요합니까?
인터페이스 :
@property (nonatomic, retain, setter=setIncident:) Incident * incident;
구현 : 수동으로 설정 동작을 제어하고 수동으로 유지하고 있기 때문에
- (void)setIncident:(CSIncident *)newIncident
{
if (incident != newIncident)
{
[incident release];
incident = [newIncident retain];
}
}
주 사이에 불일치가 있습니다. – Jano
네, 그렇다면 객체 자동 반복을 권장할까요? – mrd3650
예, '[인시던트 자동 해제]; incident = newIncident; 또는'id old = incident; 사건 = [newIncident retain]; [이전 릴리즈];'원하는 경우 if를 추가 할 수 있습니다. 또는 전체를 삭제하고 @synthesize에 의해 생성 된 메서드를 사용하십시오. 생성 된 코드는 다음과 같습니다. http://www.opensource.apple.com/source/objc4/objc4-371.2/runtime/Accessors.subproj/objc-accessors.m – Jano