Partager via


Erreur du compilateur CS0564

Mise à jour : novembre 2007

Message d'erreur

Le premier opérande d'un opérateur de décalage surchargé doit être du même type que le type conteneur et le type du second opérande doit être int.
The first operand of an overloaded shift operator must have the same type as the containing type, and the type of the second operand must be int

Vous avez tenté de surcharger un opérateur de décalage (<< ou >>) avec des opérandes incorrects. Le premier opérande doit être le type et le deuxième doit être du type int.

L'exemple suivant génère l'erreur CS0564 :

// CS0564.cs
using System;
class C
{
   public static int operator << (C c1, C c2) // CS0564
// To correct, change second operand to int, like so:
// public static int operator << (C c1, int c2)
   {
      return 0;
   }
   static void Main() 
   {
   }
}