assertions sont une disposition faite par ANSI C /C + + compilateurs pour vérifier l'intégrité d'une déclaration de programmation au moment de l'exécution . Une assertion est une macro ou une fonction qui prend une instruction conditionnelle comme paramètre. Si la condition n'est pas remplie , le programme est interrompu avec une boîte de dialogue qui indique un échec d'assertion . Un bon exemple est l'utilisation imprudente des pointeurs. Les pointeurs sont des adresses mémoire où des données ou un point d'entrée de la fonction se trouve. Si la variable pointeur ne pointe pas vers un espace mémoire utilisable et libre, ou les points de l'espace dans une zone interdite , puis accéder à ce pointeur au moment de l'exécution peut provoquer un plantage du système . Instructions
1
lancement de Visual Studio. Sélectionnez votre projet d' application. Cliquez sur le menu le plus à droite déroulant dans l'espace de travail du projet. Il montre deux entrées: " Win32 Debug " et " Win32 Release ". Choisissez "Debug Win32. "
2
Cliquez sur "Build" dans le menu de l'espace de travail de projet ou sélectionner " Créer l'application> Nom du projet " pour reconstruire l'application en mode débogage .
< Br > Hôtels 3
exécuter la nouvelle construction dans Visual studio.
4
note des informations fournies comme nom de fichier source , numéro de ligne, nom du module ou de la bibliothèque quand vous obtenez le " échec d'assertion " message. Appuyez sur " Retry " pour déboguer le code source.
5
Appuyez sur " Alt +7 " (" Alt " et "7" tandis que Alt est enfoncé ) pour faire apparaître la fenêtre de débogage . Regardez dans la pile d'appels de haut en bas , et aller à la première fonction à partir du code source de l'application , en sautant les appels système qui sont une partie du code généré par le compilateur.
6
Lire votre la ligne de fonction d'application par ligne . Notez et de suivre chaque paramètre de la fonction, la variable locale , globale et statique utilisé . Recherchez les variables de pointeur étant utilisés sans une instruction conditionnelle qui vérifie si le pointeur est NULL. Rechercher des pointeurs non initialisées et les indices de tableaux sortis des limites du terrain .
7
corriger les erreurs de programmation que vous trouverez dans et /ou autour de ce morceau de code , peut-être dans la fonction de parent ou précédemment appelée fonction . < Br > Photos 8
Suivez la pile d'appel de débogage pour voir quelle ligne dans l'application a provoqué la violation si l'erreur n'est pas encore diagnostiquée. Franchissez les appels imbriqués à détecter l'erreur . Il peut s'agir d'une combinaison de MFC , bibliothèque Windows et appels système.
9
Utilisez l'utilitaire " Pageheap.exe " pour déboguer les erreurs complexes Mémoire Windows Heap de référence qui ne peuvent pas être capturées par le diagnostic de code de l'application . Utilisez l'information donnée par le message d' affirmation pour plus suivi .