Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.993 Beiträge
 
Delphi 12 Athens
 
#5

Re: Exception vs. error number

  Alt 11. Jan 2008, 14:58
Zitat von QuickAndDirty:
Exceptions gibt es z.B. damit man auf so sachen wie
"Goto Error" verzichten kann.
Des weiteren wird ersparen Exceptions arbeit. Wenn du Z.B. Parameter hast die selbst Funktionen sind
Rechne(Inttostr(n),strtoint(s)); Ein fehler code macht das etwas unschön.
ja aber gerade dann weißt du nicht mehr wo der Fehler aufgetreten ist ... oder wie willst du jetzt z.B. dem Benutzer sagen welche der beiden Zahlen falsch war?

ich finde sowas sehr unschön:
Delphi-Quellcode:
try
  //formular mit tausenden Werten abfragen
  ...
except
  messagebox('hey du wichser ... irgendwo hast du was falsches eigegeben'#10
    + 'such mal schön danach und berichtige das gefälligst!');
end;
dann lieber ein/zwei Zeilen mehr Code, wo vorher die werte geprüft werden und wo man dem Benutzer nett sagt "Hey Schnucki, könntes du mal liebenswürdiger Weise den Wert "xyz" berichtigen?".

Zitat von QuickAndDirty:
Wo ich wirklich zustimmen muss ist das das Debuggen mit Exceptions einfach nervt.
Würde mir Wünschen das man z.b. dem debugger sagen kann er solle nur eine code einer bestimmten unit
debuggen....(Breakpoint auf alle Zeilen quasi)
schau mal in die debugger-Optionen ... einfach abschalten, was nervt.

mit {$D-} oder {$DEBUGINFO OFF} kannst du auch die Debugger-Informationen aus gewünschten Units entfernen, dann springt der debugger da auch nicht mehr hin.


wenn du z.B. 'nen dutzend Units hast und Alle bis auf Eine/Zwei funktionieren, dann in die anderen/funktionieren dieses rein und du kannst in Ruhe die Eine... debggen.



Zitat:
Exceptions gibt es z.B. damit man auf so sachen wie
"Goto Error" verzichten kann.
Eben nicht ... Exceptions = Ausnahmen
Die sind sozusagen der letzte Ausweg, wenn nichts mehr geht.

ich geb's zu ... hier schwirrt auch noch irgendwo ein Programm rum, wo ich absichtlich Exceptios zur Programmsteuerung geworfen hab (Delphi-Referenz durchsuchenRaise) ... aber für sowas würde dich eigentlich fast jeder Cheff feuern.

[ironie]
und hey, Exceptions kann man auch ganz geil als Rückgabwert mißbrauchen ... z.B. um etwas ohne Variable von einer ganz rekursiven und/oder tief verschachtelten stelle nach ganz weit oben zu übergeben und sofort direkt dahin zu springen
[\ironie]


[add]
zu StrToInt:
es gibt nicht umsonst sowas wie Delphi-Referenz durchsuchenStrToIntDef und Delphi-Referenz durchsuchenTryStrToInt
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat