Leggere in inglese

Condividi tramite


Errore del compilatore CS0564

Il primo operando di un operatore shift di overload deve essere dello stesso tipo del tipo che lo contiene, mentre il tipo del secondo operando deve essere int

Si è provato a eseguire l'overload di un operatore shift (<< o >>) con gli operandi di tipo errato. Il primo operando deve essere il tipo e il secondo operando deve essere del tipo int.

L'esempio seguente genera l'errore 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()
   {  
   }  
}