Это вопрос из двух частей в надежде, что я смогу больше узнать о теме.
1) Мне кажется, что у вас есть два популярных варианта для объявления свойства для класса в objective c. Один заключается в том, чтобы добавить свойство в тело класса заголовка, например.
@interface MyClass : NSObject {
NSArray *myArray;
}
Или вы можете добавить его после тела @interface и перед оператором @end. Таким образом.
@interface MyClass : NSObject {
//
}
@property (nonatomic, retain) NSArray *myArray;
В чем разница между этими двумя "стилями" и когда вы выбираете один над другим?
2) после @property вы найдете такие опции, как (nonatomic, retain). Что это за и почему/когда вы используете разные варианты?