Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
En affichant la hiérarchie des appels pour votre code, vous pouvez parcourir tous les appels vers et parfois à partir d’une méthode, d’une propriété ou d’un constructeur sélectionné. Cela vous permet de mieux comprendre comment le code circule et d’évaluer les effets des modifications apportées au code. Vous pouvez examiner plusieurs niveaux de code pour afficher des chaînes complexes d’appels de méthode et des points d’entrée supplémentaires vers le code. Cela vous permet d’explorer tous les chemins d’exécution possibles.
Dans Visual Studio, vous pouvez afficher une hiérarchie d’appels au moment du design. Cela signifie que vous n’avez pas besoin de définir un point d’arrêt et de démarrer le débogueur pour afficher la pile des appels d’exécution.
Utiliser la fenêtre Hiérarchie des appels
Pour afficher la fenêtre Hiérarchie des appels, cliquez avec le bouton droit dans l’éditeur de code sur le nom d’un appel de méthode, de propriété ou de constructeur, puis sélectionnez Afficher la hiérarchie des appels.
Le nom du membre apparaît dans un volet d’arborescence dans la fenêtre Hiérarchie des appels . Si vous développez le nœud membre, les appels aunom du membre et, pour C++, les appels à partir du nom dumembre, les sous-nœuds s’affichent.
Pour le code C++, vous pouvez voir des appels explicites à la fois vers et à partir d’un membre :
Note
Dans le code C++, les fonctions membres peuvent être appelées implicitement, comme un constructeur ou une méthode de conversion de type ; ces appels implicites ne sont pas nécessairement inclus dans la liste.
Pour le code C# et Visual Basic, vous pouvez voir les appels à un membre, mais pas à partir des appels suivants :
Si vous développez le nœud Appels à nœud, tous les membres qui appellent le membre sélectionné sont affichés.
Pour C++, f vous développez les appels à partir du nœud, tous les membres qui sont (explicitement) appelés par le membre sélectionné sont affichés.
Vous pouvez ensuite développer chaque membre appelant pour afficher ses appels et pour C++, appels à partir de nœuds. Cela vous permet de naviguer dans la pile des appelants, comme illustré dans l’image suivante :
Pour les membres définis comme virtuels ou abstraits, un nœud de nom de méthode Overrides s’affiche. Pour les membres de l’interface, un nœud de nom de méthode Implements s’affiche. Ces nœuds extensibles apparaissent au même niveau que les appels à et appels à partir de nœuds.
La zone Étendue de recherche de la barre d’outils contient des choix pour My Solution, Current Project et Current Document.
Lorsque vous sélectionnez un membre enfant dans le volet arborescence hiérarchie des appels :
Le volet Détails de la hiérarchie des appels affiche toutes les lignes de code dans lesquelles ce membre enfant est appelé à partir du membre parent.
La fenêtre Définition de code , si elle est ouverte, affiche le code du membre sélectionné (C++ uniquement). Pour plus d’informations sur cette fenêtre, consultez Afficher la structure du code.
Note
La fonctionnalité Hiérarchie des appels ne trouve pas de références de groupe de méthodes, ce qui inclut des emplacements où une méthode est ajoutée en tant que gestionnaire d’événements ou affectée à un délégué. Pour rechercher toutes les références à une méthode, vous pouvez utiliser la commande Rechercher toutes les références .
Éléments de menu contextuel
Le tableau suivant décrit plusieurs options de menu contextuel disponibles lorsque vous cliquez avec le bouton droit sur un nœud dans le volet d’arborescence.
| Élément de menu contextuel | Descriptif |
|---|---|
| Ajouter en tant que nouvelle racine | Ajoute le nœud sélectionné au volet d’arborescence en tant que nouveau nœud racine. Cela vous permet de concentrer votre attention sur une sous-arborescence spécifique. |
| Supprimer la racine | Supprime le nœud racine sélectionné du volet d’arborescence. Cette option est disponible uniquement à partir d’un nœud racine. Vous pouvez également utiliser le bouton Supprimer la barre d’outils Racine pour supprimer le nœud racine sélectionné. |
| Atteindre la définition | Exécute la commande Atteindre la définition sur le nœud sélectionné. Cette opération accède à la définition d’origine d’un appel de membre ou d’une définition de variable. Pour exécuter la commande Atteindre la définition, vous pouvez également double-cliquer sur le nœud sélectionné ou appuyer sur F12 sur le nœud sélectionné. |
| Rechercher toutes les références | Exécute la commande Rechercher toutes les références sur le nœud sélectionné. Cela recherche toutes les lignes de code dans votre projet qui référencent une classe ou un membre. Vous pouvez également utiliser MAJ+F12 pour exécuter la commande Rechercher toutes les références sur le nœud sélectionné. |
| Copy | Copie le contenu du nœud sélectionné (mais pas ses sous-nœuds). |
| Actualiser | Réduit le nœud sélectionné pour qu’il affiche à nouveau les informations actuelles. |