Thema: Delphi try .. except .. finally

Einzelnen Beitrag anzeigen

Muetze1
(Gast)

n/a Beiträge
 
#25

Re: try .. except .. finally

  Alt 14. Jul 2009, 21:19
Zitat von mjustin:
Zitat von Muetze1:
Und es nochmals daran erinnert, dass die einzige Möglichkeit einen Konstruktor abzubrechen das werfen einer Exception ist und somit hier nicht als Ding der Unmöglichkeit von der Hand zu weisen ist.
Das hat ja auch niemand behauptet, mein Beispiel war eventuell nicht minimal genug. Ich wollte damit vor allem nur darstellen, dass die Reihenfolge finally ... except eher ungünstig ist. Dass in meinem Beispiel auch noch andere Dinge enthalten waren, über die sich trefflich streiten lässt, hat den Blick auf die Kernfrage (zuerst das finally, oder erst das except?) etwas verstellt.
Ich verstehe dich dann nicht. Gerade dein Beispiel mit dem äusseren except Block und der Nutzung der Variablen im Exception Handler stellt doch das Problem dar: du benutzt eine Variable die nicht sicher ist, da die Exception eine Initialisierung der selbigen verhindert hat.

Und gerade dadurch wird die Kernfrage doch schon geklärt: Wenn du Dinge aus dem inneren Block nutzen willst, dann muss der Except Block innerhalb von finally stehen. Wenn aber nicht, dann lieber ausserhalb, weil sonst die Gültigkeit der lokalen Daten welche mit finally definitiv freigegeben werden sollen, unnötig verlängert wird.
  Mit Zitat antworten Zitat