Voici mon code:problème de mémoire objc à des réseaux
NSLog(@"rc: %d", [_pagesButton retainCount]);
NSMutableArray *anArray = [[NSMutableArray alloc] initWithArray:_toolbar.items];
NSLog(@"rc: %d", [_pagesButton retainCount]);
[anArray removeObjectAtIndex:2];
NSLog(@"rc: %d", [_pagesButton retainCount]);
[_toolbar setItems:anArray animated:YES];
NSLog(@"rc: %d", [_pagesButton retainCount]);
[anArray release];
NSLog(@"rc: %d", [_pagesButton retainCount]);
et est ici la sortie:
rc: 2
rc: 3
rc: 2
rc: 3
rc: 3
Le premier rc est 2 car le _pagesButton a été retenu par cette variable et par le tableau toolbar.items. Après avoir créé la variable anArray, le nombre de retain est 3, puis je supprime le _pagesButton de la variable anArray pour que le nombre de retain passe à 2. Ensuite, je mets le _toolbar.items et le nombre de retain va à 3. Mais pourquoi ??? Et quand je libère la variable anArray le retaincount encore 3. Pourquoi? S'il te plaît, aide-moi un peu.
Merci beaucoup! :) –