Delphi-Quellcode:
function abc: Boolean;
var
Obj: TObject;
begin
Result := False;
Obj := TObject.Create;
try
// etwas das schiefgehen kann ...
// ...
// hat funktioniert:
Result := True;
except
begin
ShowMessage('
except und bye bye');
raise;
end;
end;
Obj.Free;
// wird bei Exception nicht mehr erreicht
end;
Wenn man z.B. ein raise im Exceptionhandler hat wie in diesem Beispiel, wird das Objekt beim Auftreten einer
Exception nicht mehr freigeben. Daher verwende ich immer das "try .. finally .. Obj.Free .. end" Muster.