Re: Memory management/freeing with delegate methods
Re: Memory management/freeing with delegate methods
- Subject: Re: Memory management/freeing with delegate methods
- From: Scott Stevenson <email@hidden>
- Date: Sat, 28 Apr 2007 13:32:10 -0700
On Apr 28, 2007, at 11:49 AM, Paul Borokhov wrote:
The reason I was thinking that the [self release] is legal is
because the object is initially created with an instance method
that calls [super init] (not a convenience class method), and so it
seems to make sense that someone needs to release it too.
Ah, I see. Actually, In a situation like this:
- (id)init
{
if (self = [super init])
{
//...
}
return self;
}
You're not responsible for releasing yourself later, the original
caller is.
If helps to arrange things in your head, keep in mind [self release]
is not the counterpart to [super init].
That is, "self" refers to an instance, "super" refers to a class.
- Scott
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden