Freigeben über


Methodenstub generieren

Aktualisiert: November 2007

Bei Methodenstub generieren handelt es sich um ein IntelliSense-Feature zur automatischen Codegenerierung. Es bietet eine einfache Möglichkeit, beim Schreiben eines Methodenaufrufs eine neue Methodendeklaration von Visual Studio erstellen zu lassen. Visual Studio leitet die Deklaration vom Aufruf ab.

Bei einigen Programmierarten, beispielsweise der testgesteuerten Entwicklung, ist es nahe liegend, den Code zu nutzen, bevor er fest definiert wird. So lässt sich leicht ein Eindruck von der Form der zu entwickelnden API gewinnen. IntelliSense unterstützt diese Art der Programmierung. Mithilfe von Methodenstub generieren können Sie vermeiden, dass der gesamte Code vor der Nutzung komplett definiert werden muss.

Die IntelliSense-Operation Methodenstub generieren kann außerdem die Produktivität steigern: Um eine neue Methode zu generieren, müssen Sie nicht vom aufrufenden Code, auf den Sie sich eigentlich konzentrieren, zum definierenden Code wechseln, der einen anderen Schwerpunkt darstellt. Sie können stattdessen einen Methodenaufruf schreiben und dann die Operation Methodenstub generieren aufrufen, ohne Ihre Aufmerksamkeit auf verschiedene Dinge richten zu müssen.

Hinweise

Aufrufen durch Smarttags

Ob Sie die Operation Methodenstub generieren aufrufen können, ist an einem Smarttag erkennbar. Dieses Smarttag ist nur verfügbar, wenn sich der Cursor im Methodenaufruf befindet und wird eingeblendet, wenn Visual Studio keine Methode mit demselben Namen und derselben Anzahl von Parametern wie eine aufgerufene Methode finden kann. Wenn dieses Smarttag sichtbar ist, wird es unter dem äußerst linken Zeichen des Methodenbezeichners angezeigt. Wenn Sie den Cursor aus dem Methodenaufruf heraus verschieben, wird dieses Smarttag ausgeblendet.

Der Befehl Methodenstub generieren kann über eine Tastenkombination, über das Menü IntelliSense und über ein Kontextmenü im Code-Editor aufgerufen werden. Weitere Informationen finden Sie unter Gewusst wie: Methodenstub generieren.

Manuelles Aufrufen

Der Befehl Methodenstub generieren ist im Menü IntelliSense unabhängig vom Kontext immer verfügbar. Dies ermöglicht Überladungen, die sich nur durch den Typ und nicht die durch Anzahl der Parameter unterscheiden. Beispiel:

   class Program
   {
      static void Method(int a) { }

      static void Main()
      {
         Method("Call"); // No smart tag.
      }
   }

Im vorherigen Beispielcode ist ein Smarttag verfügbar, wenn sich der Cursor im Aufruf an Method befindet. Wenn Sie jedoch den Befehl Methodenstub generieren über das Menü IntelliSense aufrufen, generiert IntelliSense eine statische Methode mit dem Namen Method, die einen Zeichenfolgenparameter akzeptiert.

Der generierte Methodenstub kann entweder eine Instanz oder statisch sein. Der generierte Stub ist statisch, wenn die Methode für den Typ aufgerufen wird; andernfalls ist er eine Instanz.

Parameternamen

Die Namen der einzelnen Parameter für den generierten Methodenstub werden von den Namen der Argumente abgeleitet, die an den Methodenaufruf übergeben werden. Beispiel:

   class Program
   {
      static void Main()
      {
         string filename = @"file.txt";
         int wordCount = CountWords(filename);
      }
   }

Im vorherigen Beispielcode wird durch Methodenstub generieren eine Methodensignatur generiert, die einen Parameter mit dem Typ string und dem Namen filename verwendet.

Der vom Feature Methodenstub generieren erstellte Code wird in Anlehnung an den in der Datei MethodStub.snippet definierten Codeausschnitt erstellt. Codeausschnitte sind veränderbar. Weitere Informationen finden Sie unter Gewusst wie: Verwalten von Codeausschnitten.

Mehrdeutige Typen

Methodstub generieren verwendet Object, wenn der Typ des Parameters oder Rückgabewerts nicht abgeleitet werden kann, beispielsweise bei anonymen Typen oder implizit typisierten lokalen Variablen (Schlüsselwort var). Beispiel:

   class Program
   {
      static void Main()
      {
         var filename = Method(); //Cannot infer the return type
      }
   }

Im vorherigen Beispiel wird durch den Aufruf von Methodenstub generieren für Method() ein Methodenstub generiert, der Object zurückgibt.

Siehe auch

Aufgaben

Gewusst wie: Methodenstub generieren

Weitere Ressourcen

Automatische Codegenerierung