Partilhar via


CS0466 de erro do compilador

Mensagem de erro

'method1' não deve ter um parâmetro params, pois 'method2' não

Não é possível usar params parâmetro em um membro de classe que não o use a interface implementada.

Exemplo

O exemplo a seguir gera CS0466.

// CS0466.cs
interface I
{
   void F1(params int[] a);
   void F2(int[] a);
}

class C : I
{
   void I.F1(params int[] a) {}
   void I.F2(params int[] a) {}   // CS0466
   void I.F2(int[] a) {}   // OK

   public static void Main()
   {
      I i = (I) new C();

      i.F1(new int[] {1, 2} );
      i.F2(new int[] {1, 2} );
   }
}