Test des conditions d'erreur
Mise à jour : novembre 2007
Cette rubrique s'applique à :
Édition |
Visual Basic |
C# |
C++ |
Web Developer |
---|---|---|---|---|
Express |
Natif uniquement |
|||
Standard |
Natif uniquement |
|||
Pro et Team |
Natif uniquement |
Légende du tableau :
Applicable |
|
Non applicable |
|
Commande ou commandes masquées par défaut. |
Vous pouvez utiliser des assertions pour tester les conditions d'erreur en un point de votre code où toutes les erreurs devraient avoir été gérées. Dans l'exemple suivant, une routine graphique retourne un code d'erreur ou zéro en cas de succès.
myErr = myGraphRoutine(a, b);
/* Code to handle errors and
reset myErr if successful */
ASSERT(!myErr); -- MFC version
_ASSERT(!myErr); -- CRT version
Si le code de gestion des erreurs fonctionne correctement, l'erreur devrait être gérée et myErr réinitialisé avant que l'assertion ne soit atteinte. Si myErr a une autre valeur, l'assertion échoue, le programme s'arrête et la Échec de l'assertion, boîte de dialogue apparaît.
Les instructions d'assertion, toutefois, ne remplacent pas le code de gestion des erreurs. L'exemple suivant illustre une instruction d'assertion qui peut provoquer des problèmes dans le code de la version finale :
myErr = myGraphRoutine(a, b);
/* No Code to handle errors */
ASSERT(!myErr); // Don't do this!
_ASSERT(!myErr); // Don't do this, either!
Ce code s'appuie sur l'instruction d'assertion pour gérer la condition d'erreur. Par conséquent, tout code d'erreur retourné par myGraphRoutine sera non géré dans le code de la version finale.