Supposons que vous ayez plusieurs déclarations d'objets de classe et que vous les ajoutiez dans un NSMutableArray, vous modifiez les objets Class et l'objet NSMutableArray. Ce qui se produit?Que se passe-t-il lorsque vous ajoutez une classe dans NSMutableArray et que vous modifiez à la fois cet objet et le tableau?
Exemple de code:
MyClass *item1;
MyClass *item2;
NSMutableArray *itemHolder;
item1 = [[MyClass alloc] init];
item2 = [[MyClass alloc] init];
itemHolder = [[NSMutableArray alloc] initWithObjects:item1,item2,nil];
-(void)someFunction{
[item1 setVarName:@"item1"];
[item2 setVarName:@"item2"];
for(MyClass *items in itemHolder) [items setVarName:@"item"];
}
Je pense que je libère habituellement Item1 et item2 après l'avoir ajouté dans itemHolder mais il ne rompt pas les règles de gestion de la mémoire non? Parce qu'à la fin de dealloc, vous pouvez libérer tout
-(void)dealloc{
[item1 release];
[item2 release];
[itemHolder release];
}
Merci pour la réponse. – okysabeni