更新:2007 年 11 月
错误消息
运算符“operator”对于“type”类型的操作数具有二义性编译器有多个可用的转换,但在应用运算符之前不知道选择哪个转换。有关更多信息,请参见
下面的示例生成 CS0035:
复制代码 | |
---|---|
// CS0035.cs class MyClass { private int i; public MyClass(int i) { this.i = i; } public static implicit operator double(MyClass x) { return (double) x.i; } public static implicit operator decimal(MyClass x) { return (decimal) x.i; } } class MyClass2 { static void Main() { MyClass x = new MyClass(7); object o = - x; // CS0035 // try a cast: // object o = - (double)x; } } |