2014-01-20 43 views
1

无法在c#中重载一元运算符=。它给错误。如何在c#中重载一元运算符=。它给错误

public static Result operator =(Int32 iv) 
{ 
    return new Result(){iv=iv}; 
} 
+0

也许用例会有所帮助。就目前而言,只有一个正确的答案:你不能。如果我们知道如何/为什么要计划使用它,我们可能会提供更好的方法。 –

回答

2

你不能重载C#中的=操作。

7.2.2 Operator overloading

特别是,它是不可能的重载成员访问,方法调用,或=&&||?:checkeduncheckednewtypeofas,和is运营商。

2

您不能在C#中重载赋值运算符。

但是,有一个很好的解决方案here