Um man auf die Frage erklärend zu antworten:
Delphi-Quellcode:
try
tu_was
except
tu_was_anderes
end;
bedeutet: versuchte tu_was, wenn dabei was schief geht (z.B. Division durch Null) dann tu_was_anderes
Delphi-Quellcode:
try
// hier kann eigentlich nur Zahl1 / Zahl2 schiefgehen
// aber was wenn, z.B.: Label nicht inizialisiert worden ist, oder ein anderer Fehler auftritt
Label1.Caption := 'Ergebnis: ' + FloatToStrF(Zahl1 / Zahl2, ffNumber, 8, 2);
except
On E: EZeroDivide do
Label1.Caption := 'Division durch null. Division nicht möglich';
end;
Wie in Code schon beschrieben, will man vielleicht auf unterschiedliche Fehler unterschiedlich reagieren/Fehlermeldungen ausgeben.
On E: EZeroDivide do
gibt dem Fehler einen Namen 'E' und fragt gleich nach der Art des Fehlers 'EZeroDivide' -> Division durch Null
statt: Label1.Caption := ... kann man dann auf E zugreifen und den Systemfehler direkt ausgeben...
Wie von anderen schon beantwortet kann durch die if Anweisung aber nie der Fehler 'EZeroDivide' auftreten, da du ihn ja schon abfängst. Es reicht also eins der beiden.
Gruß David