On Fri, Mar 1, 2013 at 11:49 PM, Xiangrong Fang <[email protected]> wrote: > Hi there, > > If my class constructor looks like this: > > constructor TMyClass.Create(fn: string); > begin > sl := TStringList.Create; > try > fs := TFileStream.Create(fn, fmOpenRead); > except > self.Destroy; > end; > end; > > I create the objec like: MyInstance := > TMyClass.Create('AnNonExistentFile'); An exception occured, I can ensure > that: > > 1. there is no memory leak.
I assume FPC behaves like Delphi, so there's no leak. Actually, you don't even need to explicitly call Destroy; when an exception occurs in a constructor the destructor is called automatically. > 2. the MyInstance variable is assigned nil? No, it's not initialized. > Thanks Regards, Flávio -- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
