Forum: Object-Pascal / Delphi-Language
by Aphton,
30. Apr 2011
Die Existenz derer sagt, so wie du es schon angedeutet hast, nichts über ihr Nutzen (nützlich, gut, böse?) aus.
Es liegt alles am Programmierer.
Eigentlich sind wir hier alle in eine Tangente abgedriftet. Wäre nett, wenn man die Diskussion fortsetzen will, nen neuen Thread zu eröffnen!
Forum: Object-Pascal / Delphi-Language
by Aphton,
30. Apr 2011
Pass auf, dass du nicht gesteinigt wirst. Du läufst hier die Gefahr...
Du hast es ja eh selbst schon befürchtet xD
Forum: Object-Pascal / Delphi-Language
by Aphton,
30. Apr 2011
Ok, wie es nun aussieht, fällt das in die Kategorie "Geschmackssache".
Denn beides hat ihre Vorteile und Nachteile!
Es gibt Fälle, in denen das eine praktischer ist, das andere weniger.
Fundamentalisten werden das nun verweigern, aber so ist das nunmal!
*Keks_mampf
Edit:
Jupp, da hast du recht! Aber wenn man mal Quick & Dirty auf saubere Art und Weise programmieren will, ist das geeignet
Forum: Object-Pascal / Delphi-Language
by Aphton,
30. Apr 2011
Ja klar ist mir das bewusst. In diesem Fall ginge es nicht.
Deshalb meinte ich "hier und da".
Aber es gibt Fälle, in denen es andersherum viel leserlicher und besser ist, so wie von Zacherl angesprochen.
Zumindest habe ich so das Gefühl.
Und noch etwas:
Wenn man mehrere Bedingungen hat, sagen wir mal 20, und jede voneinander abhäng ist - dh. alle Bedingungen erfüllt werden müssen, um...
Forum: Object-Pascal / Delphi-Language
by Aphton,
30. Apr 2011
Ist die überladene Funktion Exit mit Value neu?
Weil hier bei mir gibts die nicht, ich hab nur ein Exit()!
Forum: Object-Pascal / Delphi-Language
by Aphton,
30. Apr 2011
Ähm, ja, ich hab das auch die meiste Zeit gedacht, aber um den Code kürzer zu halten, ist es wirklich sinnvoll, hier und da mal Exit zu verwenden.
Ein Beispiel:
// mit Exit
begin
if not FileExists(Filename) then Exit;
LoadFile();
ProcessFile();
DoSomethingElseWithFile();
Forum: Object-Pascal / Delphi-Language
by Aphton,
30. Apr 2011
Ähm, dann werden die folgenden Befehle nicht mehr ausgeführt, da der finally Block unbedingt ausgeführt wird und ein Exit dort veranlasst das Verlassen der Funktion. Dh. es kommt nie zu einem:
DoNotIfExitBefore