There are no temporary objects created during fast enumeration, you just get a 
reference to one of the objects in the thing you are enumerating. 

[ array objectAtIndex:i ] doesn't create temporaries either. 


On Apr 16, 2012, at 5:42 PM, Patrick Robertson wrote:

> Hi all,
> 
> I've searched the web, but can't seem to find any concrete information on
> how fast enumeration loops manage temporarily created objects.
> Would anybody be able to shine some light on whether fast enumeration
> itself takes care of the objects it creates?
> 
> So, for example in:
> 
> for (id anObject in anArray) {
> // do some stuff
> }
> 
> I'm assuming that the fast enumeration loop itself does something like this
> behind the scenes for each object in the array:
> id anObject = [anArray objectAtIndex:i]
> 
> so are these temp objects created during the enumeration released
> automatically at the end of the loop, or is it work wrapping the whole
> thing in an autoreleasepool?
> 
> @autoreleasepool {
> for (id anObject in anArray) {
> // do some stuff
> }
> }
> 
> Thanks
> _______________________________________________
> 
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
> 
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
> 
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/cocoa-dev/rols%40rols.org
> 
> This email sent to r...@rols.org


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to