Quelle est la bonne façon de faire cela?iphone - ne fuit pas
J'ai un tableau que je vais utiliser sur plusieurs méthodes. J'ajouter des objets, obtenir des valeurs, remplacer les valeurs, etc.
Aujourd'hui, je fais ceci:
Je déclare sur .h, en utilisant quelque chose comme
NSMutableArray *myArray;
dès que l'application commence, je déclare sur .m faire quelque chose comme
myArray = [[[NSArray alloc] init] retain];
Si je ne fais pas le conserver le tableau sera publié à un moment donné et l'application se bloque. Mais allouer le tableau au début de l'application et le laisser "ouvert" sans le relâcher fera pleurer les instruments, pointant le doigt sur moi, m'appelant un "leaker" ...
Comment résoudre ce problème? Est-ce la bonne façon de faire cela? comment faites-vous les gars comme ça?
grâce
merci mais dites-moi ceci: suis-je commettre une hérésie pour déclarer le tableau au début de l'application et le libérer sur la méthode dealloc? Comment ne puis-je pas conserver? Si je ne le fais pas le tableau sera invalide et l'application va planter. J'ai essayé d'enlever le retenir, mais l'application se bloque. – SpaceDog
Vous devez le libérer ailleurs dans votre code. Assurez-vous que la seule instance de '[myArray release]' dans votre code est dans votre méthode 'dealloc'. – robinjam