運算子多載,就是對已有的運算子重新進行定義,賦予其另一種功能,以適應不同的資料類型。
要重載運算子需要使用 operator關鍵字,並且要使用存取修飾詞static修飾。如下:
View Code
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace ConsoleApplication3 7 { 8 class Program 9 {10 public class Sum11 {12 #region Members13 public int num1;14 public int num2;15 #endregion16 17 #region Constructor18 public Sum(int number1,int number2)19 {20 this.num1 = number1;21 this.num2 = number2;22 }23 #endregion24 25 #region Operator26 public static Sum operator +(Sum sum1,Sum sum2)27 {28 return new Sum(sum1.num1+sum2.num1,sum2.num2+sum1.num2);29 }30 #endregion31 32 33 }34 static void Main(string[] args)35 {36 Sum sumFirst=new Sum(5,6);37 Sum sumSecond=new Sum(6,5);38 Sum sumThird = sumFirst + sumSecond;39 40 Console.WriteLine("sumThird.num1={0},sumThird.num2={0}",sumThird.num1,sumThird.num2);41 Console.ReadKey();42 }43 }44 }
運行結果為: