编译器错误 CS0564
重载移位运算符的第一个操作数的类型必须与包含类型相同,第二个操作数的类型必须是 int 类型
你试图使用错误类型的操作数重载移位运算符(<< 或 >>)。 第一个操作数必须此类型,第二个操作数必须是 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()
{
}
}