Wenn Else zu On gehört, dann müsste es dem Except-Block egal sein ob es vorher noch ein Hallo sagt.
Genau. Wenn
else zu
on gehören würde, dann müsste man für jedes
on ein eigenes
else schreiben können. Insbesondere darf aber nach einem
else kein
on mehr kommen.
Es ist ja auch so, daß für das
else kein
begin-end für mehrere Anweisungen im
else-Block notwendig ist, sondern das
end des
try-except-end das
else abschließt.
PS: ELSE gibt es dort nur, wenn vorher ein ON steht.
Nicht zwingend! Auch das hier compiliert (unter XE7) und ist faktisch identisch mit dem ohne die
else-Zeile:
Delphi-Quellcode:
var
t: TDateTime;
a: Integer;
begin
try
t := StrToDate('40.01.2015');
Writeln(DateToStr(t));
a := 5;
Writeln(IntToStr(10 div (a-5)));
except
else
Writeln('WTF');
Writeln('Else');
end;
end;
Die Frage des Einrückens bleibt aber trotzdem immer noch Geschmackssache.