Re: Why should we set ivars to nil in dealloc?
Re: Why should we set ivars to nil in dealloc?
- Subject: Re: Why should we set ivars to nil in dealloc?
- From: "stephen joseph butler" <email@hidden>
- Date: Sun, 13 Apr 2008 14:56:30 -0500
On Sun, Apr 13, 2008 at 2:52 PM, j o a r <email@hidden> wrote:
> Two reasons:
>
> * I don't think that it can be described as a best practice to begin with,
> and
>
> * You could end up hiding what I would consider to be real problems in
> your code.
>
> I want to detect real problems as soon as possible. Messaging deallocated
> objects, or objects that are in the process of being deallocated, is
> typically an error. The longer time you're unaware of something like this
> happening in your app, the more expensive it will be to fix it once it
> becomes a more serious problem.
Well, in C/C++ accessing a NULL pointer will throw an error. But that type
of error is much safer than the alternates: double free or accessing a freed
region. Those aren't just programming problems, but security concerns.
Now, messaging nil in Obj-C is a pretty common thing; whether it's
intentional or not. But I think the security issues are still there with
double free or messaging a dealloced object.
_______________________________________________
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