Erreur du compilateur CS0466

Mise à jour : novembre 2007

Message d'erreur

'méthode1' ne doit pas avoir un paramètre params, car 'méthode2' n'en a pas
'method1' should not have a params parameter since 'method2' does not

Vous ne pouvez pas utiliser le paramètre params sur un membre de classe si l'interface implémentée ne l'utilise pas.

Exemple

L'exemple suivant génère l'erreur 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} );
   }
}