英語で読む

次の方法で共有


コンパイラ エラー CS0564

オーバーロードされた shift 演算子の最初のオペランドはそれを含む型と同じ型、2 番目のオペランドの型は int でなければなりません

誤って入力されたオペランドにシフト演算子 (<< または >>) をオーバーロードしようとしました。 最初のオペランドはその型で、2 番目のオペランドは型 intである必要があります。

次の例では 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()
   {  
   }  
}