Ошибка компилятора CS1520
Метод должен иметь тип возвращаемого значения
Метод, объявленный в классе, структуре или интерфейсе, должен иметь явный тип возврата. В следующем примере IntToString
метод имеет возвращаемое значение строки:
class Test
{
string IntToString(int i)
{
return i.ToString();
}
}
Следующий пример приводит к возникновению ошибки CS1520:
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() { }
}
Его можно исправить, добавив в метод возвращаемый тип, например добавление void
в приведенный ниже пример:
public class x
{
// MyMethod no longer throws an error, because it has a return type -- "void" in this case.
void MyMethod() { }
}
Кроме того, эта ошибка может возникать, когда регистр имени конструктора отличается от регистра объявления класса или структуры, как в следующем примере. Поскольку имя не точно совпадает с именем класса, компилятор интерпретирует его как обычный метод, а не конструктор, и в результате возникает ошибка:
public class Class1
{
// Constructor should be called Class1, not class1
public class1() // CS1520
{
}
}
См. также
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по