2015年11月15日 星期日

C10_2 多載運算子"+"的例子

using System;
namespace C10_2
{
    public class Vector
    {
        public double x, y, z;
        public Vector(double vx, double vy, double vz)
        {
            x = vx;
            y = vy;
            z = vz;
        }
        public Vector(Vector rhs)
        {
            x = rhs.x;
            y = rhs.y;
            z = rhs.z;
        }
        public static Vector operator +(Vector lhs, Vector rhs)
        {
            Vector result = new Vector(lhs);
            result.x += rhs.x;
            result.y += rhs.y;
            result.z += rhs.z;
            return result;
        }
    }
    public class Program
    {
        public static void Main()
        {
            Vector v1, v2, v3;
            v1 = new Vector(3.0, 3.0, 1.0);
            v2 = new Vector(2.0,4.0,4.0);
            v3 = v1 + v2;
            Console.WriteLine("v3 = ({0},{1},{2}) ",v3.x,v3.y,v3.z);
        }
    }
}

沒有留言: