Andreas

I must completely agree with you 'Free'  and FreeandNil() can always
be called on a nil pointer, This is a language function, Therefore by doing
the
assignment check for 'readability' you are essentially advertising your
ignorance of the language IMHO

Neven

----- Original Message -----
From: "Andreas Toth" <[EMAIL PROTECTED]>
To: "Multiple recipients of list delphi" <[EMAIL PROTECTED]>
Sent: Monday, March 03, 2003 10:37 AM
Subject: RE: [DUG]: Freeing Stringlists.


> That's perfectly fine with me. I just think it's a waste of time, that's
> all. After all, after you've found that it's not nil, you'll have to call
> FreeAndNil() that will do this test again for you. And, in most instances,
> you'll probably find that Assigned() evaluates to true anyway (OK, so I
> realise this depends on the code, but in my experience this is most of the
> case), and hence doubling up on your efforts. IMHO, readability is only
> impaired if you don't know what Free() and FreeAndNil() does.
>
>
> -Andreas
>
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Behalf Of Guy Brown
> Sent: Monday, 3 March 2003 10:19
> To: Multiple recipients of list delphi
> Subject: RE: [DUG]: Freeing Stringlists.
>
>
> I stand corrected.  However I still think that it is better practise to
> explicitly test Assigned() first for the reasons that David mentioned.
>
> Guy
>
> -----Original Message-----
> From: Andreas Toth [mailto:[EMAIL PROTECTED]
>
> And what do you think Free() does -- checks to see if it is nil or not,
just
> like you are doing with Assigned().
>
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Behalf Of Guy Brown
>
> Nope, FreeAndNil() frees the object and then nil's the reference you
passed
> to it so that any other clean up code that uses Assigned() to test the
same
> reference won't free the object a second time.
>
> Guy
>
> ------------
> >From sysutils:
>
> procedure FreeAndNil(var Obj);
> var
>   P: TObject;
> begin
>   P := TObject(Obj);
>   TObject(Obj) := nil;  // clear the reference before destroying the
object
>   P.Free;
> end;
>
> --------------
>
> -----Original Message-----
> From: Andreas Toth [mailto:[EMAIL PROTECTED]
>
> There's no need to use Assigned() since FreeAndNil() performs a similar
> test...
>
>
> -Andreas
>
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Behalf Of Peter Speden
> Try
>
> If Assigned (includelist) then
> FreeAndNil (includelist);
>
> Etc
>
> Or
>
> If includelist <> nil then
> FreeAndNil (includelist);
>
> They are not freed elsewhere are they.
>
> Peter Speden
> --------------------------------------------------------------------------
-
>     New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
>                   Website: http://www.delphi.org.nz
> To UnSub, send email to: [EMAIL PROTECTED]
> with body of "unsubscribe delphi"
> Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/
>
> --------------------------------------------------------------------------
-
>     New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
>                   Website: http://www.delphi.org.nz
> To UnSub, send email to: [EMAIL PROTECTED]
> with body of "unsubscribe delphi"
> Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/
> --------------------------------------------------------------------------
-
>     New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
>                   Website: http://www.delphi.org.nz
> To UnSub, send email to: [EMAIL PROTECTED]
> with body of "unsubscribe delphi"
> Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/
>
> --------------------------------------------------------------------------
-
>     New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
>                   Website: http://www.delphi.org.nz
> To UnSub, send email to: [EMAIL PROTECTED]
> with body of "unsubscribe delphi"
> Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/
>
>

---------------------------------------------------------------------------
    New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
                  Website: http://www.delphi.org.nz
To UnSub, send email to: [EMAIL PROTECTED] 
with body of "unsubscribe delphi"
Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/

Reply via email to