Section courante

A propos

Section administrative du site

TRY

Essai
Free Pascal  

Syntaxe

TRY
 instructionarisque
EXCEPT
 instruction_exécuté_si_exception
END
TRY
 instructionarisque
EXCEPT
 ON codeerreur1 DO instructionexception1;
 ON codeerreur2 DO instructionexception2;
 ...
END
TRY
 instructionarisque
EXCEPT
 ON codeerreur1 DO instructionexception1;
 ON codeerreur2 DO instructionexception2;
 ...
ELSE
 instructionexceptionpardefaut;
END
TRY
 instructionpeutetreexecuter
FINALLY
 instruction_exécuté_a_la_fin_meme_si_exception
END

Paramètres

Nom Description
instructionarisque Ce paramètre permet d'indiquer les instructions risquant de provoquer une exception.
instruction_exécuté_si_exception Ce paramètre permet d'indiquer les instructions exécuter lorsqu'une exception se déclenche.
codeerreur1, codeerreur2 Ce paramètre permet d'indiquer le code d'erreur à surveiller.
instructionexception1, instructionexception2 Ce paramètre permet d'indiquer l'instruction effectuer lorsque le code d'erreur est détecté.
instructionexceptionpardefaut Ce paramètre permet d'indiquer l'instruction exécuter si aucun des codes d'erreurs n'est rencontré.
instructionpeutetreexecuter Ce paramètre permet d'indiquer les instructions pouvant être exécuter.
instruction_exécuté_a_la_fin_meme_si_exception Ce paramètre permet d'indiquer les instructions devant obligatoirement être exécuter même si une erreur se produit.

Description

Ce mot réservé permet d'indiquer la partie à traiter tant qu'une exception ne se produit pas.

Exemple

Cet exemple permet d'indiquer comment intercepter une division par 0 :

  1. Program TrySamples;
  2.  
  3. {$MODE Delphi}
  4.  
  5. Uses SysUtils;
  6.  
  7. Var
  8.  I:Integer;
  9.  
  10. BEGIN
  11.  For I:=-10 to 3 do Begin
  12.   Try
  13.    WriteLn('I = ',I,', 1/I = ',1/I:0:2);
  14.   Except
  15.    On EDivByZero do WriteLn('Division par 0');
  16.   End;
  17.  End;
  18. END.

on obtiendra le résultat suivant :

I = -10, 1/I = -0.10
I = -9, 1/I = -0.11
I = -8, 1/I = -0.13
I = -7, 1/I = -0.14
I = -6, 1/I = -0.17
I = -5, 1/I = -0.20
I = -4, 1/I = -0.25
I = -3, 1/I = -0.33
I = -2, 1/I = -0.50
I = -1, 1/I = -1.00
I = 0, 1/I = Division par 0
I = 1, 1/I = 1.00
I = 2, 1/I = 0.50
I = 3, 1/I = 0.33

Voir également

Langage de programmation - Free Pascal - Les instructions d'exceptions

Dernière mise à jour : Dimanche, le 28 février 2016