영어로 읽기

다음을 통해 공유


컴파일러 오류 CS1520

메서드에는 반환 형식이 있어야 합니다.

클래스, 구조체 또는 인터페이스에서 선언된 메서드에는 명시적인 반환 형식이 있어야 합니다. 다음 예에서 IntToString 메서드의 반환 값은 string입니다.

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  
   {  
   }  
}  

참고 항목