1. La source de l'anomalie.
Dans l'application de Delphi, les situations suivantes sont plus susceptibles de générer des exceptions.
(1) Traitement de fichiers
(2) allocation de mémoire
(3) Ressources Windows
(4) Créer des objets et des formulaires pendant l'exécution
(5) Conflit matériel et système d'exploitation
?
2. Gestion des exceptions.
(1) Essayez … sauf … fin ;
Lorsqu'une exception se produit dans le code dans le corps d'essai, le système se tourne vers la partie sauf pour le traitement des exceptions. C'est l'une des façons les plus élémentaires de Delphi gère les exceptions.
?
(2) Essayez … enfin … fin ;
Cette structure de traitement des exceptions est généralement utilisée pour protéger l'allocation des ressources Windows et d'autres aspects.
Contrairement à essayer ... sauf ... fin, la partie enfin de la structure est toujours exécutée.
?
(3) Il n'y a pas d'essai ... sauf ... enfin ... la structure finale pour gérer les exceptions et protéger les structures d'allocation des ressources. Enfin ... la structure finale, réalisant ainsi la gestion des exceptions.
?
?
3. Traitement précis des exceptions.
(1) Définir une exception.
Dans Delphi, chaque exception est une classe dérivée [2] de la classe Exception [1] . Par conséquent, définir une exception consiste à définir une classe dérivée de la classe d'exception.
type emyException = classe (exception);
Bien sûr, la classe de base peut être une exception ou tout niveau d'exception.
?
(2) Jetez une exception dans le programme.
Lancer des exceptions selon différentes situations est le mode le plus élémentaire d'utilisation des exceptions. Dans Delphi, il est mis en œuvre par l'instruction Raish .
[Syntaxe] River Exception class.Create («DÉCRIPTION DÉFAUT D'EXCEPTION»);
?
(3) Catch des exceptions plus précisément dans Try ... sauf ... fin.
Utilisez la structure ON E: Exception Do ... pour gérer les exceptions lancées par une classe d'exception spécifique dans le corps DO.
?
4. Débogage d'exception.
Dans l'IDE Delphi, décochez l'état de vérification de la case à cocher de débogage intégré dans "Options de débogueur" (vous pouvez utiliser les outils de menu—> Options de débogueur… pour y accéder).
?
5. Explication supplémentaire des anomalies.
(1) Chaque programme peut produire des erreurs! Il s'agit d'un phénomène et d'un droit incontestables dans l'industrie du logiciel. En fait, la structure traditionnelle si ... sinon peut résoudre toutes les erreurs.
La réponse est claire: les exceptions fournissent une manière plus flexible et ouverte, permettant aux programmeurs ultérieurs de gérer cette erreur sur la base des conditions réelles plutôt que d'utiliser des résultats de traitement prédéfinis. En fait, je pense que c'est le cœur du mécanisme d'exception.
[1] La définition de la classe d'exception se trouve dans l'unité Sysutils.
[2] Delphi prend également en charge les classes d'exception qui n'héritent pas de l'exception, mais je ne pense pas qu'il soit très sage de le faire.