5

我们如何在 C# 中实现后缀和前缀运算符的重载

void Main()
{
    MyClass myclass=new MyClass();
    myclass.x=5;
    Console.WriteLine((++myclass).x);
          Console.WriteLine((myclass++).x);
}

public class MyClass
{
    public int x;
    public static MyClass operator ++(MyClass m)
    {
        m.x=m.x+1;
        return m;
    }

}

这可能是不必要的运算符重载,但已知 ++ 运算符可以重载。我们如何在这里实现不同的行为(i++,++i)

4

1 回答 1

2

据我所见,在 C# 中重载一元运算符 ++ 会重载运算符的后缀和前缀版本。

来源: http ://devhawk.net/2003/07/09/operator-overloading-in-c/ http://www.programmingvideotutorials.com/csharp/csharp-operator-overloading

于 2012-05-10T10:22:35.370 回答