2010-03-04 4 views
0

L'élément de produit est-il une copie ou simplement une référence à l'objet dans NSArray? A-t-il besoin d'être libéré? Considérant qu'il n'y a pas d'allocation, je suppose qu'il n'y a pas besoin de libération, correct?Obj-C: Une référence ou une copie?

ProductItem * item = [appDelegate.productTextList objectAtIndex: [indexPath rangée]];

Répondre

0

Il est juste un pointeur de type ProductItem, il est donc pas une copie.

Votre référence est garantie valable dans le cadre de l'appel à objectAtIndex (il appelle autorelease sur l'objet). Si vous voulez le garder plus longtemps, vous devez le conserver et vous êtes responsable de le libérer lorsque vous en avez fini avec.

1

Il est un pointeur vers la classe ProductItem.

Vous devez seulement libérer un objet si vous avez fait quelque chose pour augmenter son nombre de retenues. C'est à dire. alloc/init, copy ou appelez le retain.

Questions connexes