Bonjour,
J'utilise assez souvent l'instruction Exit pour quitter une procédure suite à un évènement particulier.
Par exemple sous le except d'un try, en cas d'erreur.
Je me demande si cette façon de programmer est "propre".
Qu'en pensez-vous ?
Version imprimable
Bonjour,
J'utilise assez souvent l'instruction Exit pour quitter une procédure suite à un évènement particulier.
Par exemple sous le except d'un try, en cas d'erreur.
Je me demande si cette façon de programmer est "propre".
Qu'en pensez-vous ?
Ça dépend de la procédure et de l'impact sur la suite du traitement. Il n'est pas possible de répondre par oui ou par non ;)
Mais perso (et en gros), le bloc try..except engloberait plutôt l'ensemble de la procédure.
Un exemple peut-être ?
Personellement, quand il y a beaucoup de variables qui rentrent en jeux dans une procédure, j'utilise plutôt des GoTo Label dans des Try Except.
C'est certainement un peu rustique mais je n'ai jamais eu à me plaindre de cette méthode
Beny
Tu ne peux pas entrer dans ou sortir d'un bloc try..except avec des goto :aie:
Ahahah, oui tu as raison !
Pendant 1 seconde j'ai confondu avec un for to do... :koi:
Ce qui, au final, n'est pas vraiment de rapport :aie:
Sinon, pour utiliser try except et les GoTo, il suffit de placer une Boolean, du genre :
BenyCode:
1
2
3
4
5
6
7
8
9 Success := True; try {Mode super code ici...} except Success := False; end; if not Success then {Raté !}
On peut alors se poser la question de mettre le code du try dans une procédure à part, qui renvoie un code de retour, ou qui sera appelée dans un try
Salut,
je ne vois pas pourquoi compliquer la chose, alors que le Exit répond parfaitement à votre demande d'après l'aide de delphi, sinon utiliser la fonction Halt pour terminer le programme, donc pour moi c'est la meilleure manière de faire.
bon courage.
Ok, merci pour vos réponses.
Je suppose qu'il en va de même pour l'instruction break qui est bien pratique pour sortir d'une boucle, et que j'utilise aussi assez souvent.
Si ces réponses te satisfont, tant mieux ;)
Mais à l'arrivée, il y a doux mélange entre Break (sortie de boucle), Exit (sortie de procédure), Halt (terminaison de processus) et... gestionnaire d'exception :aie:
Bref... :resolu: ?