On Sep 10, 2010, at 4:11 PM, Dave Carrigan wrote:

> On Sep 10, 2010, at 1:08 PM, Philip Vallone wrote:
>> 
>> Thanks for the prompt replay.
>> 
>> Ok I added autorelease:
>> 
>> PinDetailsView *detailsView= [[[PinDetailsView alloc] 
>> initWithFrame:CGRectMake(0, 0, 270, 420)]autorelease];
>> 
>> Is this a correct way to release the object, or      should I use
>> 
>> [detailsView release];
>> 
>> Or is either acceptable?
> 
> The former is more idiomatic because you don't need to remember the release 
> at the end. That is especially important if you were to change your code at 
> some time in the future, such as adding a return statement sometime before 
> the release, which would give you a memory leak.

Except that Apple recommends, for iOS development particularly, that you use 
-release rather than -autorelease when sensible.  (If you're returning an 
object to a caller, then it's not sensible to try to avoid -autorelease.)

(There was a recent thread about when to do the -autorelease in the case that 
you're going to do it.  There, it was generally although not universally 
recommended to do the autorelease in the same expression as the alloc and init.)

Cheers,
Ken

_______________________________________________

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

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

Reply via email to