Re: Simple instance [[alloc] init] question.
Re: Simple instance [[alloc] init] question.
- Subject: Re: Simple instance [[alloc] init] question.
- From: Dave Geering <email@hidden>
- Date: Tue, 31 Aug 2010 11:37:03 +1000
> // 1)
> self.serialIDs = [[IRMSerialDetailsDO alloc] init];
The alloc method allocates an instance with a retain count of 1, and
assigning it to the serialIDs property bumps it up to 2. In your
dealloc method, you will [hopefully] send it a release message which
puts it back at 1, but this means the object still survives (i.e. it
is not deallocated).
> // 2)
> IRMSerialDetailsDO *mySerialIDDO = [[IRMSerialDetailsDO alloc] init];
> self.serialIDDO = mySerialIDDO;
> [mySerialIDDO release];
Here, the alloc creates the instance with a retain count 1, assigning
it to the property bumps it up to 2, and the release right afterwards
puts it back down to 1. In your dealloc method, you will sent it
another release message which puts it at 0, and therefore the instance
is deallocated.
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden