Есть ли способ объявить частную собственность в Objective C? Цель состоит в том, чтобы извлечь выгоду из синтезированных геттеров и сеттеров, реализующих определенную схему управления памятью, но не публикующуюся.
Попытка объявить свойство внутри категории приводит к ошибке:
@interface MyClass : NSObject {
NSArray *_someArray;
}
...
@end
@interface MyClass (private)
@property (nonatomic, retain) NSArray *someArray;
@end
@implementation MyClass (private)
@synthesize someArray = _someArray;
// ^^^ error here: @synthesize not allowed in a category implementation
@end
@implementation MyClass
...
@end