Для одного из моих пользовательских классов я определил метод с именем initialize, чтобы установить некоторые переменные экземпляра одновременно с init. Код ниже. Инструмент анализатора сообщает об утечке в viewDidLoad в строке с [[Employee alloc]. Поскольку я освобождаю переменную в dealloc, я подумал, что это должно быть нормально .. в чем может быть проблема? заранее спасибо.
@interface testViewController : UIViewController <UITextFieldDelegate>{
Employee *employee;
}
- (void)viewDidLoad {
if(employee ==nil)
employee = [[Employee alloc] initialize:@"John"];
if (![employee.entityName isEqualToString:@"Test"]) { //The leak is reported here for object allocated above
///...
}
}
- (void)viewDidUnload {
[super viewDidUnload];
employee = nil;
}
- (void)dealloc {
[super dealloc];
[employee release];
}
//In the Employee class
-(id) initialize:(NSString*) name{
self = [super init];
self.entityName = name;
return self;
}