Требуется ли (сохранить), если сеттер реализован вручную? - PullRequest
0 голосов
/ 16 сентября 2011

Я хотел бы знать, какой эффект (если таковой имеется) сохраняет в следующем описании свойства Ручной установщик сохраняет переменную.

Интерфейс:

@property (nonatomic, retain, setter=setIncident:) Incident * incident;

Реализация:

- (void)setIncident:(CSIncident *)newIncident  
{  
    if (incident != newIncident)  
    {  
        [incident release];  
        incident = [newIncident retain];  
    }  
}

1 Ответ

0 голосов
/ 16 сентября 2011

Это не имеет большого значения, так как вы вручную управляете заданным поведением и сохраняете его вручную.

Единственным (очень минимальным) значением будет удобочитаемость, чтобы понять поведение, когда вы просто смотрите на заголовок, и меньше оттока, если вы удалите ручную реализацию (но вы уже должны удалить setter =).

В вашем вопросе у вас также есть несоответствие между setDog и setIncident

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...