У меня есть следующий простой класс:
@interface Article: NSObject {
NSString *title;
}
@property (copy, nonatomic) NSString *title;
@end
@implementation
- (void)setTitle:(NSString *)aString {
if ((!title && !aString) || (title && aString && [title isEqualToString:aString])) return;
dirty = YES;
[title release];
title = [aString copy];
}
- (NSString *)title {
return title;
}
@end
В моем приложении мне нужно сделать много вещей, таких как
Article *article= [objectsArray getObjectAtIndex:x];
NSString *title=article.title;
UILabel.text=title;
[title release];
Я знаю, что я должен позвонить удержать, когда я получу собственность:
NSString *title=[article.title retain];
Может быть, мне лень делать удержание, когда я получаю собственность. Или, если мне нужно сделать это десятки раз по всему приложению.
Могу ли я получить геттер для возврата копии?
- (NSString *)title {
return [title copy];
}