コンパイラ エラー CS0564
更新 : 2007 年 11 月
エラー メッセージ
オーバーロードされた 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()
{
}
}