Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie die Aufrufhierarchie für Ihren Code anzeigen, können Sie in allen Aufrufen und manchmal aus einer ausgewählten Methode, Eigenschaft oder einem Konstruktor navigieren. Auf diese Weise können Sie besser verstehen, wie Code fließt, und die Auswirkungen von Änderungen an Code auswerten. Sie können mehrere Codeebenen untersuchen, um komplexe Ketten von Methodenaufrufen und zusätzliche Einstiegspunkte für den Code anzuzeigen. Auf diese Weise können Sie alle möglichen Ausführungspfade erkunden.
In Visual Studio können Sie zur Entwurfszeit eine Anrufhierarchie anzeigen. Dies bedeutet, dass Sie keinen Haltepunkt festlegen und den Debugger starten müssen, um den Laufzeitaufrufstapel anzuzeigen.
Verwenden des Fensters "Anrufhierarchie"
Um das Fenster "Aufrufhierarchie " anzuzeigen, klicken Sie mit der rechten Maustaste im Code-Editor auf den Namen einer Methode, einer Eigenschaft oder eines Konstruktoraufrufs, und wählen Sie dann " Aufrufhierarchie anzeigen" aus.
Der Membername wird in einem Strukturansichtsbereich im Fenster "Anrufhierarchie " angezeigt. Wenn Sie den Memberknoten, den Namen des Anrufsan-Mitglieds und für C++ erweitern, werden Unterknoten angezeigt.
Für C++-Code können Sie explizite Aufrufe an und von einem Mitglied anzeigen:
Hinweis
In C++-Code können Memberfunktionen implizit aufgerufen werden, z. B. ein Konstruktor oder eine Typkonvertierungsmethode; Diese impliziten Aufrufe sind nicht unbedingt in der Liste enthalten.
Für C#- und Visual Basic-Code werden Aufrufe eines Mitglieds angezeigt, jedoch nicht von:
Wenn Sie den Knoten "Anrufe an " erweitern, werden alle Mitglieder angezeigt, die das ausgewählte Mitglied aufrufen.
Für C++ erweitern Sie den Knoten "Aufrufe von " und werden alle Elemente angezeigt, die vom ausgewählten Element aufgerufen werden (explizit).
Anschließend können Sie jedes aufrufende Element erweitern, um dessen Aufrufe an und für C++ die Knoten "Anrufe von " anzuzeigen. Auf diese Weise können Sie in den Stapel der Anrufer navigieren, wie in der folgenden Abbildung dargestellt:
Für Elemente, die entweder als virtuell oder abstrahiert definiert sind, wird ein Nameknoten der Overrides-Methode angezeigt. Für Schnittstellenmber wird ein Nameknoten der Implements-Methode angezeigt. Diese erweiterbaren Knoten werden auf derselben Ebene wie die Knoten "Anrufe an " und " Anrufe von" angezeigt.
Das Suchbereichsfeld auf der Symbolleiste enthält Auswahlmöglichkeiten für "Meine Projektmappe", "Aktuelles Projekt" und "Aktuelles Dokument".
Wenn Sie ein untergeordnetes Element im Ansichtsbereich " Anrufhierarchie " auswählen:
Im Detailbereich " Anrufhierarchie " werden alle Codezeilen angezeigt, in denen dieses untergeordnete Element vom übergeordneten Element aufgerufen wird.
Wenn das Fenster " Codedefinition " geöffnet ist, wird der Code für das ausgewählte Element angezeigt (nur C++). Weitere Informationen zu diesem Fenster finden Sie unter Anzeigen der Struktur des Codes.
Hinweis
Das Feature "Aufrufhierarchie " findet keine Methodengruppenverweise, die Orte enthalten, an denen eine Methode als Ereignishandler hinzugefügt oder einem Delegaten zugewiesen wird. Um alle Verweise auf eine Methode zu finden, können Sie den Befehl "Alle Verweise suchen " verwenden.
Kontextmenüelemente
In der folgenden Tabelle werden mehrere Kontextmenüoptionen beschrieben, die verfügbar sind, wenn Sie im Strukturansichtsbereich mit der rechten Maustaste auf einen Knoten klicken.
Kontextmenüelement | BESCHREIBUNG |
---|---|
Als neuer Stamm hinzufügen | Fügt den ausgewählten Knoten dem Strukturansichtsbereich als neuen Stammknoten hinzu. Auf diese Weise können Sie ihre Aufmerksamkeit auf eine bestimmte Unterstruktur konzentrieren. |
Stamm entfernen | Entfernt den ausgewählten Stammknoten aus dem Strukturansichtsbereich. Diese Option ist nur über einen Stammknoten verfügbar. Sie können auch die Schaltfläche " Stammsymbolleiste entfernen " verwenden, um den ausgewählten Stammknoten zu entfernen. |
Gehe zu Definition | Führt den Befehl "Gehe zu Definition" auf dem ausgewählten Knoten aus. Dadurch wird zur ursprünglichen Definition eines Memberaufrufs oder einer Variablendefinition navigiert. Um den Befehl "Gehe zu Definition" auszuführen, können Sie auch auf den ausgewählten Knoten doppelklicken oder F12 auf dem ausgewählten Knoten drücken. |
Alle Verweise suchen | Führt den Befehl "Alle Verweise suchen" auf dem ausgewählten Knoten aus. Dadurch werden alle Codezeilen in Ihrem Projekt gefunden, die auf eine Klasse oder ein Element verweisen. Sie können auch UMSCHALT+F12 verwenden, um den Befehl "Alle Verweise suchen" auf dem ausgewählten Knoten auszuführen. |
Kopieren | Kopiert den Inhalt des markierten Knotens (aber nicht deren Unterknoten). |
Aktualisieren | Reduziert den ausgewählten Knoten, sodass die aktuellen Informationen erneut erweitert werden. |