C#中怎么实现操作符重载,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
创新互联建站从2013年创立,是专业互联网技术服务公司,拥有项目成都网站建设、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元亳州做网站,已为上家服务,为亳州各地企业和个人服务,联系电话:13518219792
C#操作符重载学习实践操作
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class MyCls { public int X { get; //C#操作符重载set; } public int Y { get; set; } public override string ToString() { return string.Format("X={0},Y={1}", X, Y); } public override bool Equals(object obj) { MyCls a = obj as MyCls; return a.X == this.X && a.Y == this.Y; } public override int GetHashCode() { //C#操作符重载return X * Y; } public static MyCls operator +(MyCls a, MyCls b) { return new MyCls() { X = a.X + b.X, Y = a.Y + b.Y }; } public static MyCls operator -(MyCls a, MyCls b) { return new MyCls { X = a.X - b.X, Y = a.Y - b.Y }; } public static MyCls operator ++(MyCls a) { return new MyCls() { X = a.X++, Y = a.Y++ }; } public static MyCls operator --(MyCls a) { return new MyCls() { X = a.X--, Y = a.Y-- }; } public static bool operator ==(MyCls a, MyCls b) { return a.X == b.X && a.Y == b.Y; } public static bool operator !=(MyCls a, MyCls b) { //C#操作符重载return a.X != b.X && a.Y != b.Y; } public static void Main() { MyCls a = new MyCls { X = 1, Y = 1 }; MyCls b = new MyCls { X = 2, Y = 2 }; Console.WriteLine(a + b); Console.WriteLine(b - a); Console.WriteLine(b++); Console.WriteLine(a--); Console.WriteLine(a++ == b); Console.WriteLine(a!= b--); Console.ReadLine(); } //C#操作符重载} }
C#操作符重载程序输出结果:
X=3,Y=3 X=1,Y=1 X=3,Y=3 X=0,Y=0 True False
关于C#中怎么实现操作符重载问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。