J'ai une liste de lecture appelée NSMutableArray. C'est dans une méthode appelée getAllPlaylists. Le code est quelque chose comme ceci:question de gestion de la mémoire - libérer un objet qui doit être retourné
-(NSMutableArray *)getAllPlaylists
{
//playlist is an instance variable
playlist = [[NSMutableArray alloc] init]; //memory leak here
...
//some code here which populates the playlist array
[playlist addObject: object1];
...
return playlist;
}
L'étape d'allocation de tableau de la liste de lecture provoque une fuite de mémoire. Dans un tel scénario, où puis-je libérer ce tableau? Ou puis-je éviter l'initialisation de la liste de lecture ici en faisant autre chose? Toute aide est la bienvenue!!
Merci! Mais la dernière fois que j'ai essayé playlist = [NSMutableArray tableau]; l'application s'est écrasée. De toute façon, je vais essayer encore une fois. – ulag
Cela fonctionnera tant que vous n'essayez jamais d'utiliser 'playlist' dans d'autres méthodes de votre classe. Dans ce cas, cela n'aurait aucun sens d'avoir une variable d'instance (cela dépend de ce que vous essayez de faire). – wbyoung
Si vous utilisez 'playlist = [tableau NSMutableArray];' assurez-vous que vous n'essayez pas de le libérer n'importe où. Cela entraînera probablement un accident. – indragie