C#简单的向量用法实例教程

本文以实例讲述了C#简单的向量用法,主要包括重载运算符>:以向量长度判断是否为真、重载运算符!=、<、<=等,具体实现代码如下:

using System;
class Vector
{
 private double XVector;
 private double YVector;
 //构造函数
 public Vector(double x, double y )
 {
 XVector = x;
 YVector = y;
 }
 //获取向量的长度
 public double GetLength( )
 {
 double Length = Math.Sqrt( XVector*XVector + YVector*YVector );
 return Length;
 }
 //重载运算符==
 public static bool operator == ( Vector a, Vector b )
 {
 return ( (a.XVector == b.XVector) && (a.YVector == b.YVector) );
 }
 //重载运算符!=
 public static bool operator != ( Vector a, Vector b )
 {
 return !( a == b );
 }
 //重载运算符>:以向量长度判断是否为真
 public static bool operator > ( Vector a, Vector b )
 {
 return a.GetLength( ) > b.GetLength( );
 }
 //重载运算符<
 public static bool operator < ( Vector a, Vector b )
 {
 return a.GetLength( ) < b.GetLength( );
 }
 //重载运算符>=
 public static bool operator >= ( Vector a, Vector b )
 {
 return ( a == b ) || ( a > b );
 }
 //重载运算符<=
 public static bool operator <= ( Vector a, Vector b )
 {
 return ( a == b ) || ( a < b );
 }
}
class Test
{
 static public void Main( )
 {
 Vector vector1 = new Vector( 3, 4 );
 Vector vector2 = new Vector( 0, 5 );
 Vector vector3 = new Vector( 2, 2 );
 Console.WriteLine("向量1为( 3, 4 ) \t 向量2为( 0, 5 ) \t 向量3为( 2, 2 )");
 Console.WriteLine("向量1 == 向量2 为:{0}", vector1 == vector2 );
 Console.WriteLine("向量1 != 向量2 为:{0}", vector1 != vector2 );
 Console.WriteLine("向量1 > 向量3 为:{0}", vector1 > vector3 );
 Console.WriteLine("向量2 < 向量3 为:{0}", vector2 < vector3 );
 Console.WriteLine("向量1 >= 向量2 为:{0}", vector1 != vector2 );
 Console.WriteLine("向量1 <= 向量2 为:{0}", vector1 != vector2 );
 }
}