Zitat von
Tyrael Y.:
Hi,
mal als grundsätzliche Regel folgendes beherzigen
Delphi-Quellcode:
var meineObjektVariable:TTypMeineObjektVariable;
begin
try
meineObjektVariable := TTypMeinerObjektVariablen.Create;
try
TuWas;
finally
meineObjektVariable.Free;
end;
except
AusnahmeBehandeln;
end;
end;
Dein Code ist Äquivalent zu
Delphi-Quellcode:
var
meineObjektVariable:TTypMeineObjektVariable;
begin
meineObjektVariable := TTypMeinerObjektVariablen.Create;
try
try
TuWas;
except
AusnahmeBehandeln;
end;
finally
meineObjektVariable.Free;
end;
end;
und zu
Delphi-Quellcode:
var
meineObjektVariable:TTypMeineObjektVariable;
begin
meineObjektVariable := TTypMeinerObjektVariablen.Create;
try
TuWas;
except
meineObjektVariable.Free;
AusnahmeBehandeln;
end;
end;
(vorausgesetzt, im Destruktor wird keine
Exception geworfen).
Warum sollte man das grundsätzlich so machen, wie Du gezeigt hast?