AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Zitat:
|
AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Zitat:
Wäre eine Überlegung wert, aber dann nicht mehr 100% abwärtskompatibel. Denn stell dir mal vor, du würdest einen bestehenden try-except-Block, wo es schon ein .Free im exception-Abchnitt gibt, um einen finally-Abschnitt nach dem neuen Konzept ergänzen. Wenn du darin dann auch ein .Free machst, kracht es natürlich bei einer Exception, weil das Objekt versucht wird doppelt freizugeben. Zitat:
|
AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Du musst schon nach try except finally suchen ;)
|
AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Bei einem Fehler im try wird die Ausführung abgebrochen und der Code im except-Block ausgeführt (falls vorhanden). finally wird immer ausgeführt.
Code der nur bei Fehlerfreiheit ausgeführt werden soll, kann man ja einfach in den try-Block packen. |
AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Zitat:
|
AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Zitat:
Zitat:
Wenn das try-except-finally dazu da ist, ein Konstrukt wie dieses zu ersetzen, ja. Und nur so ergibt es ja auch Sinn.
Delphi-Quellcode:
o := TKlasse.Create;
try try TuWas; except on E: EIrgendwas do FehlerBearbeitung; end; finally o.Free; end; Der Gewinn ist allerdings nicht gerade üppig. Man spart lediglich ein try, ein end und eine Einrückungsstufe. Ist also lediglich Kosmetik, aber Aussehen ist ja auch manchmal wichtig. |
AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Ich selber verwende fast nur noch interfaced Klassen. Der Bedarf nach finally ist dadurch drastisch gesunken. Habe daher kein Bedarf.
|
AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Also ich fände das gut! Dieses Geschachtel finde ich immer sehr unübersichtlich.
|
AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Was ist denn der Unterschied zwischen
Delphi-Quellcode:
und
Objekt := TKlasse.Create;
try Objekt.MacheEtwas; except on E: EIrgendwas do Fehlerbearbeitung; finally Objekt.Free; end;
Delphi-Quellcode:
?
Objekt := TKlasse.Create;
try Objekt.MacheEtwas; except on E: EIrgendwas do Fehlerbearbeitung; end; Objekt.Free; |
AW: Was würdet ihr von einem try-except-finally-Konstrukt halten?
Der Unterschied tritt dann auf, wenn in Fehlerbearbeitung eine neue Exception auftritt (entweder durch ein raise oder "aus Versehen")
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz