Einzelnen Beitrag anzeigen

Propeller

Registriert seit: 18. Nov 2005
Ort: Berlin
9 Beiträge
 
#12

Re: Gibts es Funktionen mit zwei Ergebnistypen!?

  Alt 3. Feb 2007, 12:49
Hallo,

danke erstmal für eure Mühe, mir zu helfen!!!

Ich habe dennoch eine allgemeine Frage, was die Anweisung try...except betrifft. Habe diese noch nie im Informatikunterricht behandelt und sie einfach aus einem Beispiel übernommen. Ich habe mich ein bisschen darüber informiert, es stand in einem Buch von mir, dass wenn innerhalb des Try-Blocks ein Fehler auftritt, so wird die Programmausführung in diesem Block unterbrochen und hinter Except fortgesetzt.

Dazu folgendes primitives, jedoch anschauliches Beispiel:

Delphi-Quellcode:
function division(x,y: extended): extended;
begin
  try
  result := x/y
  
  except result := 1110
  End;
end;
So, nach meiner Logik sollte er nun die Anweisung "x/y" probieren. Tritt dabei ein Fehler auf, wie z.B. eine Division durch Null, so soll er als Result "1110" ausgeben (lassen wir den mathematisch völlig unlogischen Zusammenhang mal außen vor, die Zahl dient hier mal lediglich als Beispiel )

Führe ich die Funktion nun doch aus, so erhalte ich dennoch einen Laufzeitfehler mit dem Hinweis von "EZeroDivide", anstatt, dass er mir als Resultat "1110" schreibt.

Was habe ich nun falsch verstanden bzw. falsch gemacht???

[edit=Christian Seehase]Delphi-Tags korrigiert. Mfg, Christian Seehase[/edit]
  Mit Zitat antworten Zitat