C# 如何在c语言中重载后缀和前缀运算符#

C# 如何在c语言中重载后缀和前缀运算符#,c#,C#,如何在c中实现后缀和前缀运算符的重载# 这可能是一个不必要的运算符重载,但众所周知,++运算符可以重载。我们如何在这里实现不同的行为(i++,++i)从我所看到的,在C#中重载一元运算符++会重载运算符的后缀和前缀版本 资料来源: publicstaticmyclass操作符++(MyClass m){returnnewmyclass(){x=m.x+1};}有效! void Main() { MyClass myclass=new MyClass(); myclass.x=5;

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


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

从我所看到的,在C#中重载一元运算符++会重载运算符的后缀和前缀版本

资料来源:

publicstaticmyclass操作符++(MyClass m){returnnewmyclass(){x=m.x+1};}有效!
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;
    }

}