컴파일러 오류 CS1502

‘name’에 가장 일치하는 오버로드된 메서드에 잘못된 인수가 있습니다.

이 오류는 메서드로 전달 중인 인수 형식이 해당 메서드의 매개 변수 형식과 일치하지 않을 때 발생합니다. 호출된 메서드가 오버로드되면 오버로드된 버전 중 어떤 것에도 전달 중인 인수 유형과 일치하는 시그니처가 없는 것입니다.

이 문제를 해결하려면 다음 중 하나를 수행합니다.

  • 전달 중인 인수의 형식을 다시 확인합니다. 호출 중인 메서드의 인수와 일치하는지 확인합니다.

  • 해당하는 경우, Convert 클래스를 사용하여 일치하지 않는 매개 변수를 변환합니다.

  • 해당하는 경우, 메서드에 필요한 형식과 일치하도록 일치하지 않는 모든 매개 변수를 캐스팅합니다.

  • 해당하는 경우, 전송 중인 매개 변수 형식과 일치하도록 메서드의 다른 오버로드된 버전을 정의합니다.

다음 샘플에서는 CS1502 오류가 발생합니다.

// CS1502.cs  
namespace x  
{  
   public class a  
   {  
      public a(char i)  
      // try the following constructor instead  
      // public a(int i)  
      {  
      }  
  
      public static void Main()  
      {  
         a aa = new a(2222);   // CS1502  
      }  
   }  
}