Gestion erreur
Résolu/Fermé
Utilisateur anonyme
-
Modifié par astrocurieux le 3/07/2016 à 17:38
ElementW Messages postés 4814 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 - 3 juil. 2016 à 21:26
ElementW Messages postés 4814 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 - 3 juil. 2016 à 21:26
A voir également:
- Gestion erreur
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Logiciel gestion photo gratuit - Guide
- Erreur 1001 outlook - Accueil - Bureautique
- Logiciel gestion cave à vin gratuit excel - Télécharger - Cuisine & Gastronomie
1 réponse
ElementW
Messages postés
4814
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 227
Modifié par gravgun le 3/07/2016 à 18:52
Modifié par gravgun le 3/07/2016 à 18:52
'lut
L'avantage c'est qu'il n'y a pas de
from human import idiocy
del idiocy
peut on obtenir quelque chose d’intéressant avec try et catch ?Justement, try et catch sont là pour ça.
#include <stdexcept> // Par exemple void truc::functionOne() { [...] if (blabla) { throw std::runtime_error("Nom de Zeus c'est la fin du monde!"); } } [...] try { functionOne(); functionTwo(); functionTree(); } catch (const std::runtime_error &e) { return 1; } return 0;
L'avantage c'est qu'il n'y a pas de
ifà écrire, et que si aucune exception n'est levée, c'est aussi rapide que s'il n'y avait pas de
ifde vérif'. Par contre quand il y en a une, c'est 10x~20x plus lent que des
ifen chaîne, donc c'est à utiliser pour des cas "exceptionnels" (erreurs), pas l'exécution normale de ton progamme.
from human import idiocy
del idiocy
3 juil. 2016 à 19:50
je comprend la partie try , qui englobe les fonctions susceptible de générer des erreurs.
je crois comprendre que catch agis comme un else qui suivrais un if non valide ?
mais je comprend pas le reste ...
le (const std::runtime_error &e) et la partie intra-fonction .
dans ton exemple tu définie un message d'erreur qui s'affiche si il il y en a une, mais si je veut a la place ne rien afficher, je peut ?
3 juil. 2016 à 21:26
Dans une fonction, on signale/lève/envoie/créé une erreur/exception via le mot-clé .
Mon exemple n'affiche aucun message d'erreur. Ceci dit j'utilise la classe pour indiquer la nature de mon erreur, et créer une instance de cette classe demande de spécifier une chaîne de caractères descriptive, qu'on peut récupérer après. Exemple; si je voulais afficher l'erreur en plus de la logique actuelle: