AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE try.......except....end; - Compiler soll dies beachten
Thema durchsuchen
Ansicht
Themen-Optionen

try.......except....end; - Compiler soll dies beachten

Ein Thema von Bladefire · begonnen am 5. Jan 2015 · letzter Beitrag vom 16. Jan 2025
Antwort Antwort
Dejan Vu
(Gast)

n/a Beiträge
 
#1

AW: try.......except....end; - Compiler soll dies beachten

  Alt 6. Jan 2015, 07:03
Grundsätzlich wäre es besser, wenn man erstmal vermeidet, daß eine Exception überhaupt ausgelöst wird ...
Das ist mir zu grundsätzlich.
Vielleicht so: Grundsätzlich wäre es besser, wenn der happy path programmiert wird, d.h. man geht z.B. davon aus, das der String eine Zahl ist (wenn man davon ausgehen kann), die Verbindung zustande kommt, der Divisor <> 0 ist (wenn das kein Sonderfall, d.h. Bestandteil der Formel ist) usw.

Als Prüfung, ob der String eine Zahl ist, eignet sich das try-except-pattern nicht, da hast Du vollkommen recht.
Delphi-Quellcode:
// Happy Path
try
  DoThis;
  DoThat;
  C := A/B;
  Number:= StrToInt(aString);
except
  ShowMessage('This did not work properly');
end;

// Prüfung
if TryStrToInt(aString, Number) then
  Number := StrToInt(aString);
else
  ShowMessage('Cannot convert'); // Oder mach sonst irgendwas

if Not IsZero(B) then C:=A/B else c:= NaN;

if CanConnectTo(URL) then
  ConnectTo(URL)
else
  ShowMessage('Cannot connect to '+URL);
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz