Странно, что в книге Big Nerd Ranch iOS 5 (стр .73) и в книге программирования iOS 5 (O'Reilly, стр .314) (updadte: даже Kochan Objective-C книга Четвертое издание), в контексте ARC они говорят, что атрибут свойства по умолчанию assign
... Но Документация Apple говорит, что значение по умолчанию strong
.
Я также пробовал простую программу, где, если я не укажу strong
, программа работает нормально, и если я укажу strong
, она будет работать одинаково, а когда вместо assign
будет использоваться компилятор, предупреждение, поэтому кажется, что по умолчанию действительно strong
.
Поэтому, если большую часть времени мы хотим
@property (nonatomic, readwrite, strong) NSMutableArray *foo;
то мы можем просто написать
@property (nonatomic) NSMutableArray *foo;
так как остальные два (readwrite
и strong
) по умолчанию?