Autor Beitrag
Stübi
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 331

Win XP, Win 2000, Win ME
D5 Ent, D7 Prof, D2005 PE, C#
BeitragVerfasst: Di 22.02.05 15:04 
Hallo zusammen

Vielleicht ist diese Frage etwas dumm gestellt oder allgemein nicht eine sehr schlaue Frage aber ich stelle sie trotzdem! (Ihr wollt ja auch lachen können)

Gibt es zwischen
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
Try
  Try 
    //Anweisungen
  finally
    //Anweisungen
  end;
except
  //Anweisungen
end;

und
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
Try
  Try
    //Anweisungen
  except
    //Anweisungen
  end;
finally
  //Anweisungen
end;

einen nennenswerten Unterschied oder spielt das gar keine Rolle.

Gruss Stübi


Moderiert von user profile iconTino: Topic aus Sonstiges verschoben am Mi 23.02.2005 um 16:39

_________________
Neun von zehn Stimmen in meinen Kopf sagen, dass ich nicht verrückt sei. Die zehnte summt die Tetrismelodie.
opfer.der.genauigkeit
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 754
Erhaltene Danke: 1



BeitragVerfasst: Di 22.02.05 15:09 
Ja.

Fall 1:
Tritt ein Fehler auf, wird erst die finally Anweisung erfüllt,
dann except.

Fall 2:
Umgekehrt zu Fall 1.

Gegenfrage:
Wozu brauchst du das?

_________________
Stellen Sie sich bitte Zirkusmusik vor.
MitschL
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 211

Win 98 SE, Win 2000
D5 Pers, D6 Pers und D7 Pro
BeitragVerfasst: Di 22.02.05 15:21 
Das sollte IMHO schon einen Unterschied machen.
Delphi-Hilfe zu try..finally hat folgendes geschrieben:
... Wenn eine Exception ausgelöst, aber in der finally-Klausel nicht behandelt wird, führt sie aus der try...finally-Anweisung hinaus, und jede zuvor in der try-Klausel ausgelöste Exception geht verloren. In der finally-Klausel sollten daher alle lokal ausgelösten Exceptions behandelt werden, damit die Behandlung anderer Exceptions nicht gestört wird.

_________________
"Bloßes Ignorieren ist noch keine Toleranz." (Theodor Fontane)
Stübi Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 331

Win XP, Win 2000, Win ME
D5 Ent, D7 Prof, D2005 PE, C#
BeitragVerfasst: Di 22.02.05 15:35 
Ich habe beide Varianten schon mehre male verwendet, zum Beispiel beim speichern von Dateien oder beim Internetzugriff usw. und wusste nie welche nun besser ist oder sich besser eignet.
Wenn das Einteblockende z.B. finally direkt ans end; des anderen blocks z.B. except stösst (so wie im Beispiel von mir) dann sollte es ja eigentlich keine Rolle spielen, oder irre ich mich da?

Gruss stübi

_________________
Neun von zehn Stimmen in meinen Kopf sagen, dass ich nicht verrückt sei. Die zehnte summt die Tetrismelodie.