Share via


Compilerfehler CS1520

Die Methode muss einen Rückgabetyp besitzen.

Eine Methode, die in einer Klasse, Struktur oder Schnittstelle deklariert ist, muss einen expliziten Rückgabetyp haben. Im folgenden Beispiel verfügt die IntToString-Methode über einen Rückgabewert des Typs string:

class Test  
{  
    string IntToString(int i)  
    {  
        return i.ToString();  
    }  
}  

Im folgenden Beispiel wird CS1520 generiert:

public class x  
{  
   // Method declaration missing a return type before the name of MyMethod
   // Note: the method is empty for the purposes of this example so as to not add confusion.
   MyMethod() { }
}  

Und kann durch Hinzufügen eines Rückgabetyps zur Methode behoben werden, z. B. durch Hinzufügen von void im folgenden Beispiel:

public class x  
{  
   // MyMethod no longer throws an error, because it has a return type -- "void" in this case.
   void MyMethod() { }
}  

Dieser Fehler kann auch auftreten, wenn sich die Schreibweise des Namens eines Konstruktors von der Klassen- oder Strukturdeklaration unterscheidet, wie im folgenden Beispiel. Da der Name nicht mit dem Klassennamen identisch ist, interpretiert der Compiler ihn als eine normale Methode, nicht als einen Konstruktor, und erzeugt den Fehler:

public class Class1  
{  
   // Constructor should be called Class1, not class1  
   public class1()   // CS1520  
   {  
   }  
}  

Siehe auch