Я прочитал много тем о геттерах и сеттерах. Я знаю, что это такое и почему они полезны. Различные исходные претензии - это разные способы выпуска иваров. Здесь начинается мое замешательствоЭто правильный способ борьбы с иварами?
@interface CoolClass : NSObject
{
NSString *name;
}
@property (nonatomic, copy) NSString *name;
@end
@implementation CoolClass
@synthesize name = _name;
-(id)init
{
if(super = [self super])
{
self.name = @"Jo";
}
return self;
}
-(void)dealloc
{
[self.name release], self.name = nil;
}
@end
Это правильный способ выпускать/освобождать иваров?
возможно дубликат [Почему я не должен использовать сорбент, чтобы освободить недвижимость в Objective-C? ] (http://stackoverflow.com/questions/7262268/why-shouldnt-i-use-the-getter-to-release-a-property-in-objective-c) – jrturton
@Profo Сообщение: я пропустил, что вы 'd написано 'super = [self super]' - это должно быть 'self = [super init]' – justin
if ((super = [super init])) также должно быть написано с помощью double (()), чтобы избежать предупреждения компилятора. –