Demnach hatte ich bisher bei "try...finally" eine solche Funktionalität im Hinterkopf, daß Fehler abgefangen, aber im Fehlerfalle (wird der Rest im try nach dem Fehler noch ausgeführt?) keine weitere Aktion erfolgt, danach aber in jedem Falle der Code im finally-Teil ausgeführt wird.
Beides macht das gleiche, wenn b mal angenommen eine
Exception wirft und mal nicht:
Delphi-Quellcode:
a;
try
b;
finally
c;
end;
// und:
a;
try
b;
c;
except
c;
raise;
end;
In beiden Fällen wird c ausgeführt und der Fehler wieder geraised und somit weitergereicht. Finally bewirkt das nur automatisch.