Erro do Compilador CS1520
O método deve ter um tipo de retorno
Um método declarado em uma classe, struct ou interface deve ter um tipo de retorno explícito. No exemplo a seguir, o método IntToString
tem um valor retornado de cadeia de caracteres:
class Test
{
string IntToString(int i)
{
return i.ToString();
}
}
O exemplo a seguir gera o erro 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() { }
}
E pode ser corrigido adicionando-se um tipo de retorno ao método, como a adição de void
no exemplo abaixo:
public class x
{
// MyMethod no longer throws an error, because it has a return type -- "void" in this case.
void MyMethod() { }
}
Como alternativa, esse erro pode ser observado quando o uso de maiúsculas do nome de um construtor difere daquele empregado na classe ou declaração de struct, como no exemplo a seguir. Como o nome não é exatamente o mesmo que o nome da classe, o compilador o interpreta como um método regular, não um construtor, e produz o erro:
public class Class1
{
// Constructor should be called Class1, not class1
public class1() // CS1520
{
}
}
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: