У меня проблемы с пониманием, когда использовать свойства в Objective C 2.0. Кажется, вам не нужно свойство для примитивного типа, такого как: int, bool, float. Это правда? Я видел примеры, показывающие свойства для этих типов и других опускающих их. Например, в примере кода Apple они имеют:
...
@interface Book : NSObject {
// Primary key in the database.
NSInteger primaryKey;
// Attributes.
NSString *title;
NSDate *copyright;
NSString *author;
BOOL hydrated;
BOOL dirty;
NSData *data;
}
@property (assign, nonatomic, readonly) NSInteger primaryKey;
// The remaining attributes are copied rather than retained because they are value objects.
@property (copy, nonatomic) NSString *title;
@property (copy, nonatomic) NSDate *copyright;
@property (copy, nonatomic) NSString *author;
...
Пример кода в списке книг Apple SQLite
Итак, как вы можете видеть, они не используют свойство для BOOL, но рассматривают его как переменную экземпляра в файле реализации, считывая значение и устанавливая значение.
При поиске в Интернете я нашел учебники, в которых используются такие свойства, как: (флаг @property BOOL). Может кто-нибудь пролить свет на эту тему для меня? Спасибо.