[fpc-pascal] methods of an object to create others objects
Andrew Brunner
andrew.t.brunner at gmail.com
Wed Jul 7 00:09:29 CEST 2010
On Tue, Jul 6, 2010 at 5:04 PM, Graeme Geldenhuys
<graemeg.lists at gmail.com> wrote:
> I meant is as in it is safe to call MyObj.Free even if MyObj = nil. I
> answered based on the explicit question.
>
> But yes, in your example where MyObj was an instance, the code in the
> destructor could still trip you up if it caused an exception of some
> kind.
>
Whew, Ok. Years back Delphi (the experience I'm drawing on)
Object.Free could not be done. Now that I know FPC does the check for
nil I probably won't be using FreeAndNil anymore. But this raises a
large concern for me. That is the EXTRA if statement being called for
every destruction of every object will lead to a decrease in high
scale operations where Classes were chosen instead of data structures.
I think that who ever decided to add that if statement did so at the
cost of performance for high-scale systems. That if statement would
never be true if people coding knew what they were doing. I would
certainly have a case for removing that if statement.
More information about the fpc-pascal
mailing list