成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#運算符重載學習總結

開發 后端
本文介紹C#運算符重載是個不常出現的應用,同時也是個好玩的東西,我們可以使用一下方法來實現這樣的需求。

C#運算符重載是個不常出現的應用,同時也是個好玩的東西。

我們可以使用他來實現這樣的需求:

當一個訂單與另外一個訂單相加形成一個新的訂單。新訂單的貨物為兩個訂單的貨物的并集,總價為兩個訂單的總價和。下面實現看看,先做個輔助的貨物類

  1. public class Merchandise{  
  2. public int Count { get; set; }  
  3. public string Name { get; set; }  
  4. public double UnitPrice { get; set; }  
  5. }然后來實現訂單類  
  6. public class Order  
  7. {  
  8. public double TotalPrices { get; set; }  
  9. public List<Merchandise> Merchadises { get; set; }  
  10. public static Order operator +(Order a, Order b){  
  11. Order newnewOrder = new Order(){  
  12. TotalPrices = a.TotalPrices + b.TotalPrices  
  13. };  
  14. newOrder.Merchadises.AddRange(a.Merchadises);  
  15. newOrder.Merchadises.AddRange(b.Merchadises);  
  16. return newOrder;  
  17. }  

下面是客戶端調用代碼

  1. Order o1 = new Order { TotalPrices = 500.0 };  
  2. o1.Merchadises.AddRange  
  3. new List<Merchandise>{  
  4. new Merchandise{Name = "肥皂"Count=100UnitPrice=3},  
  5. new Merchandise{Name = "毛巾"Count=100UnitPrice=2}  
  6. }  
  7. Order o2 = new Order { TotalPrices = 8000.0 };  
  8. o1.Merchadises.AddRange  
  9. new List<Merchandise>{  
  10. new Merchandise{Name = "電視"Count=5UnitPrice=1000},  
  11. new Merchandise{Name = "DVD"Count=5UnitPrice=600}  

參數
result-type運算符的結果類型。
unary-operator下列運算符之一:+ - ! ~ ++ — true false
op-type***個(或***一個)參數的類型。
operand***個(或***一個)參數的名稱。
binary-operator其中一個:+ - * / % & | ^ << >> == != > < >= <=
op-type2第二個參數的類型。
operand2第二個參數的名稱。
conv-type-out類型轉換運算符的目標類型。
conv-type-in類型轉換運算符的輸入類型。

備注

前兩種形式聲明了用戶定義的內置C#運算符重載。注意,并非所有內置運算符都可以被重載(請參見可重載的運算符)。op-type 和 op-type2 中至少有一個必須是封閉類型(即運算符所屬的類型)。例如,這將防止重定義整數加法運算符。

后兩種形式聲明了轉換運算符。conv-type-in 和 conv-type-out 中正好有一個必須是封閉類型(即,轉換運算符只能從它的封閉類型轉換為其他某個類型,或從其他某個類型轉換為它的封閉類型)。

運算符只能采用值參數,不能采用 ref 或 out 參數。

任何運算符聲明的前面都可以有一個可選的屬性(C# 編程指南)列表。以上介紹C#運算符重載

【編輯推薦】

  1. C#生產者和消費者
  2. 詳細介紹C#基礎知識
  3. C#正則表達式學習筆記
  4. 簡單描述C#存儲過程
  5. 淺析C#基于TCP協議
責任編輯:佚名 來源: 博客園
相關推薦

2009-08-12 10:47:03

C#運算符重載

2009-08-12 11:20:51

C#運算符重載

2009-09-04 13:18:10

C#允許運算符重載

2009-08-12 10:27:12

C#運算符重載運算符重載實例

2009-08-12 10:56:47

C#運算符重載C#運算符重載實例

2009-08-12 12:46:11

C#運算符重載

2009-08-12 10:37:13

C#運算符重載

2009-08-11 15:51:08

C#運算符算術運算符

2009-08-12 09:30:10

C#??運算符

2009-08-12 15:20:18

C#賦值運算符復合賦值運算符

2009-08-12 15:02:49

C#賦值運算符簡單賦值運算符

2009-08-12 14:49:33

C#移位運算符

2009-08-11 14:16:38

C# New運算符

2009-08-12 13:35:22

C#關系運算符

2009-09-01 10:08:57

C#運算符

2009-08-12 14:29:32

C#條件運算符

2021-12-15 10:25:57

C++運算符重載

2011-07-15 01:34:36

C++重載運算符

2009-11-06 13:57:52

C#

2009-08-12 14:23:09

C#邏輯運算符
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产日韩欧美一区二区 | 日韩免费三级 | 91精品国产综合久久久密闭 | 在线观看免费福利 | 日韩精品免费看 | 日韩高清电影 | 99在线免费观看 | 91国内精精品久久久久久婷婷 | 久久精品视频一区二区三区 | 久久久精品影院 | 久久国产精品偷 | 日韩一区不卡 | 亚洲一区二区三区在线 | 亚洲精品视频在线 | 成人午夜电影在线观看 | 久久国产精品99久久久大便 | 日韩成人在线观看 | 欧美中文字幕一区二区三区 | 亚洲高清一区二区三区 | 国产在线中文字幕 | 91日韩在线| 成人在线视频免费观看 | 色久影院 | 国产高清视频一区 | 五月综合久久 | 亚洲成人精品久久久 | 天天看天天操 | 亚洲天堂免费在线 | av大片在线 | 日韩一区二区三区在线看 | 91精品免费视频 | 国产高清在线精品一区二区三区 | 中文字幕1区 | 日韩国产在线 | 成人3d动漫一区二区三区91 | 久草在线 | 成人午夜视频在线观看 | 三级视频在线观看电影 | www一级片 | 日韩一区二区三区精品 | 中文字幕av高清 |