J'apprends encore la gestion de la mémoire Objective-C. J'essaye d'implémenter plusieurs classes simples dans un exemple de programme que je construis.Objectif-C 2,0; Attribuer une propriété; Fuite de mémoire?
À titre d'exemple, disons que je la définition de classe suivante:
#import <UIKit/UIKit.h>
@interface customViewController : UIViewController
{
customObject *myCustomObject;
}
@property (retain) customObject *myCustomObject;
- (void)replaceCustomObject:(customObject *)newObject;
@end
Pour la propriété, j'utiliser le mot-clé standard synthétisent ...
@synthesize myCustomObject;
Alors s'il vous plaît supposer que dans l'instance de customViewController myCustomObject est déjà défini avec une valeur valide et est en cours d'utilisation. Ensuite, la méthode replaceCustomObject est définie comme:
- (void)replaceCustomObject:(customObject *)newObject
{
//Does this cause a memory leak because I just assign over
//the existing property?
self.myCustomObject = newObject;
}
Comme le commentaire demande, cette mémoire-t fuite? Ou est-ce la manière valide de remplacer un objet précédent par un nouvel objet?
Merci,
Frank
Je sais que je n'ai pas besoin de la méthode replaceCustomObject:. C'était juste un moyen pour moi d'illustrer mon objectif global. Comme vous pouvez l'imaginer, j'utilise beaucoup plus que l'attribution d'une propriété.:-) Merci de répondre à ma question. –