Markus Werle wrote:

> Hi!
> 
> In one of Herb Sutters articles I saw that
> after deleting a pointer (a pimpl) he assigns 0 afterwards
> which seems to me like a good idea.
> (see e.g. http://www.gotw.ca/gotw/028.htm or http://tinyurl.com/bq8o)
> 
> Maybe there is a good reason (efficiency?)
> why checked_delete omits this extra step.
> Please explain.
> 
> template<class T> inline void checked_delete(T * x)
> {
>   typedef char type_must_be_complete[sizeof(T)];
>   delete x;
>   // why not ?
>   x = 0;
> }
> 

checked_delete only checks, it doesn't improve you code :)
Seriously, the question can be redirected to C++98 level: why delete 
operator doesn't assign deleted pointer to 0? I'm sure it has already been 
discussed. You can search for the topic in comp.std.c++ and 
comp.lang.c++.moderated.
-- 
Alexander Nasonov
Remove minus and all between minus and at from my e-mail for timely response


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to