Сохранить утечку памяти в элементе меню iphone - PullRequest
0 голосов
/ 28 сентября 2011

Как устранить утечку памяти в этом:

NSArray *keyboard = [[[NSDictionary alloc] initWithContentsOfFile:menuPath] objectForKey:@"Menu"];
[self setMenuItems:keyboard];
[keyboard release];

setMenuItems определено в заголовочном файле.

@property (nonatomic,retain) NSArray *menuItems;

Ответы [ 2 ]

1 голос
/ 30 сентября 2011
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:menuPath]; 
self.menuItems = [dict objectForKey:@"Menu"]; 
[dict release];

И в вашем методе dealloc

- (void)dealloc
{
    [menuItems release], menuItems = nil;
}
0 голосов
/ 28 сентября 2011

В методе dealloc

- (void)dealloc
{
self.menuItems = nil;
[super dealloc];
}

NSArray *keyboard = [[[NSDictionary alloc] initWithContentsOfFile:menuPath] objectForKey:@"Menu"];
self.menuItems = keyboard; 
[keyboard release]; 
...