2010-11-03 5 views
1

J'ai essayé l'outil Construire et Analyser de Xcode pour la première fois aujourd'hui. et trouvé quelque chose dans cette fonctionConstruire et analyser l'outil Cocoa Xcode

S'il vous plaît vérifier l'image:

enter image description here

-(IBAction)completeSessionButAct:(id)sender{ 
    NSDictionary *tempDic = [[NSDictionary alloc] initWithObjectsAndKeys:[self view],@"mainview", 
          congratulationScreen,@"screen", 
          congScreenLabel,@"cong_screen_label", 
          congScrStatusLabel,@"cong_scr_status_label", 
          [sender superview],@"last_screen",nil]; 
    [functionality completeSession:tempDic]; 
} 

ce début de fonction de la ligne 64 et se terminent à 71

Quelqu'un peut-il me expliquer la mémoire fuite dans cette fonction.

Répondre

4

Le texte tel qu'il apparaît dans l'image me semble assez clair: vous créez un objet que vous possédez (nouveau, allouer, copier, conserver [NARC] fait cela); mais vous n'annulez jamais la propriété. Utilisez à la place +[NSDictionary dictionaryWithObjectsAndKeys:] à la place.

+0

Ou utilisez -autorelease avant que votre tempDict ne soit hors de portée. –

+0

Lien de documentation obligatoire: http://developer.apple.com/iphone/library/documentation/Cocoa/Conceptual/MemoryMgmt/MemoryMgmt.html –

+1

@Joshua Nozzi: Ou juste '-release' –

Questions connexes