zoukankan      html  css  js  c++  java
  • C# 重载运算符

    CLR支持在类型中,通过使用operator关键字定义静态成员函数来重载运算符,让开发者可以像使用内置基元类型一样使用该类型:

     1     class Program
     2     {
     3         static void Main(string[] args)
     4         {
     5             Salary mikeIncome = new Salary(54);
     6             Salary roseIncome = new Salary(100);
     7             //add方法
     8             Salary total1 = Salary.add(mikeIncome, roseIncome);
     9             //运算符重载
    10             Salary total2 = mikeIncome + roseIncome;
    11         }
    12     }
    13     class Salary
    14     {
    15         public float RNB;
    16         public Salary(float value)
    17         {
    18             RNB = value;
    19         }
    20         //add方法
    21         public static Salary add(Salary s1, Salary s2)
    22         {
    23             Salary total = new Salary(s1.RNB + s2.RNB);
    24             return total;
    25         }
    26         //运算符重载
    27         public static Salary operator +(Salary s1, Salary s2)
    28         {
    29             Salary total = new Salary(s1.RNB + s2.RNB);
    30             return total;
    31         }
    32     } 

    第8行代码与第10行代码结果是一样的,但后者读起来一目了然。

    参考:《编写高质量代码改善C#程序的157个建议》陆敏技

  • 相关阅读:
    CSS实现底部固定
    ES6新特性--多行文本
    DataTable转实体
    jQuery插件开发
    页面可编辑
    clearfix--清除浮动
    前端日历控件推荐
    图片Base64编码
    第八周学习进度博客
    人月神话多后感01
  • 原文地址:https://www.cnblogs.com/xuyouyou/p/13164063.html
Copyright © 2011-2022 走看看