Une chaîne est un cas particulier .. http://thaesofereode.info/clocFAQ/
Mais en général, en supposant que vous n'utilisez pas la collecte des ordures juste coller aux quelques règles simples ..
http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/MemoryMgmt/MemoryMgmt.html
plus .. pertinemment retenez un objet quand vous en avez besoin pour le maintenir - balancez-le avec un relâchement une fois terminé. Si vous ne l'avez pas créé ou conservé, vous n'avez pas besoin de le libérer. Envoi -release à un objet n'est pas comme libérer de la mémoire, il signale seulement que vous en avez fini avec lui. Il se peut qu'il soit toujours là ou non. Vous n'avez aucun moyen de le savoir, vous n'avez pas besoin de le savoir, et vous ne devriez pas essayer de savoir s'il est utilisé ailleurs, si un code pomme intelligent a décidé de le mettre en cache, s'il s'agit d'un singleton, etc.
Il peut toujours être valide, mais lorsque vous avez envoyé la version, vous avez effectivement dit "J'ai terminé" et non "récupérer cette mémoire".
Merci pour la réponse. J'essayais juste de me familiariser avec Objective-c et j'écrivais ceci pour voir si je comprenais ce qui se passait. –
@Spyker Vous devriez marquer une réponse comme acceptée :-) – chakrit
Pourquoi y a-t-il tant de gens qui disent "je ne sais pas Objective-C mais" et ensuite faire des hypothèses sur sa mise en œuvre? Si vous n'avez pas la réponse à coup sûr, cela ne sert à rien de répondre. Le bouton dit "Postez votre réponse", pas "Publiez votre réponse" ou "Publiez votre hypothèse". – dreamlax