How to overload the operator ++ (unary increment) in C#

1 Answer

0 votes
using System;

namespace ConsoleApplication1
{
    class Test
    {
        public int _n;

        public static Test operator + (Test x, Test y)
        {
            Test t = new Test();

            t._n = x._n + y._n;

            return t;
        }
        public static Test operator ++ (Test t)
        {
            t._n++;

            return t;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Test a = new Test();
            a++;
            Console.WriteLine(a._n);

            Test b = new Test();
            b++;
            b++;
            Console.WriteLine(b._n);

            Test t = a + b;
            Console.WriteLine(t._n);
        }
    }
}

/*
run:
  
1
2
3
     
*/

 



answered Mar 15, 2017 by avibootz
edited Mar 16, 2017 by avibootz

Related questions

1 answer 187 views
1 answer 163 views
1 answer 137 views
1 answer 185 views
1 answer 157 views
1 answer 192 views
192 views asked Mar 16, 2017 by avibootz
1 answer 163 views
...