C#运算符重载C#基础学习
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace day01 8 { 9 class Class30 10 { 11 private int value; 12 public int Value { get; set; } 13 public Class30() 14 { 15 16 } 17 public Class30(int value) 18 { 19 Value = value; 20 } 21 public static Class30 operator+(Class30 c1,Class30 c2) 22 { 23 Class30 cTemp = new Class30(); 24 cTemp.Value = c1.Value + c2.Value; 25 return cTemp; 26 } 27 //static类方法 如何处理 28 //该方法是取相反数 29 public static Class30 operator -(Class30 c1) 30 { 31 Class30 cTemp = new Class30(); 32 cTemp.Value = -c1.Value; 33 return cTemp; 34 } 35 public static Class30 operator -(Class30 c1, Class30 c2) 36 { 37 Class30 cTemp = new Class30(); 38 cTemp.Value = c1.Value - c2.Value; 39 return cTemp; 40 } 41 static void Main(string[] args) 42 { 43 //Class30 c1 = new Class30(100); 44 //Class30 c2 = new Class30(100); 45 //Class30 c3 = c1 + c2; 46 //Console.WriteLine(c3.Value); 47 //Console.WriteLine(); 48 49 //Class30 c1 = new Class30(200); 50 //Class30 c2 = new Class30(100); 51 52 //Class30 c3 = c1 - c2; 53 //Console.WriteLine(c3.Value); 54 55 Class30 c1 = new Class30(100); 56 Class30 cTemp = -c1; 57 Console.WriteLine(cTemp.Value); 58 59 Console.ReadKey(); 60 } 61 } 62 }