偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

C#運(yùn)算符重載“>”的操作淺析

開發(fā) 后端
C#運(yùn)算符重載“>”的操作在本文通過(guò)一個(gè)實(shí)例的講解來(lái)說(shuō)明“>”的使用細(xì)節(jié)。

C#運(yùn)算符重載“>”的操作問(wèn)題的出現(xiàn):今天一個(gè)同學(xué)在做ProjectHoshimi的時(shí)候,自己在封裝一個(gè)對(duì)象庫(kù)。

希望使用C#運(yùn)算符重載>的操作,語(yǔ)法正確,但是總是不能成功。

按照MSDN C# Keyword opeartor定義可以有下面的語(yǔ)法構(gòu)成

  1. public static result-type operator unary-operator ( op-type operand )  
  2. public static result-type operator binary-operator (       
  3.  op-type operand,      
  4.   op-type2 operand2  
  5. )  
  6. public static implicit operator conv-type-out ( conv-type-in operand   
  7. )  
  8. public static explicit operator conv-type-out (   
  9. conv-type-in operand   

那么下面代碼就是正確的

  1.   class A    {   
  2.      private int a;     
  3.    public static bool operator>(A a,A b){   
  4.          return a.a > b.a;  
  5.        }        
  6. public A(int value)        {    
  7.         a = value;       
  8.  }    

C#運(yùn)算符重載“>”的操作問(wèn)題再次提出:為什么不能成功編譯呢?因?yàn)?gt;運(yùn)算符在.NET Framework中不允許但對(duì)出現(xiàn),如下代碼就是正確的。

  1.  class A    {   
  2.     private int a;    
  3.    public static bool operator>(A a,A b){     
  4.       return a.a > b.a;    
  5.     }       
  6. public static bool operator <(A a, A b)        {           
  7. return a.a < b.a;      
  8.   }       
  9. public A(int value)        {    
  10.        a = value;     
  11.   }    

為什么需要這樣做呢?

其實(shí)我覺(jué)得這個(gè)就是C#在設(shè)計(jì)上面默認(rèn)了一些讓系統(tǒng)編碼更安全的一些約束。如果沒(méi)有這樣的約束,那么可能是>重載了,但是<沒(méi)有重載,但是如果有人使用將會(huì)發(fā)現(xiàn)很未知的錯(cuò)誤。

C#運(yùn)算符重載“>”的操作的基本情況就向你介紹到這里,希望對(duì)你了解C#運(yùn)算符重載“>”的操作有所幫助。

【編輯推薦】

  1. C#運(yùn)算符重載實(shí)例淺析
  2. C#運(yùn)算符重載概念及應(yīng)用詳解
  3. C#運(yùn)算符重載實(shí)現(xiàn)復(fù)數(shù)運(yùn)算
  4. C#運(yùn)算符重載實(shí)例解析
  5. C#運(yùn)算符重載的一些總結(jié)
責(zé)任編輯:仲衡 來(lái)源: cnblogs
相關(guān)推薦

2009-08-12 10:27:12

C#運(yùn)算符重載運(yùn)算符重載實(shí)例

2009-08-12 09:30:10

C#??運(yùn)算符

2009-08-11 15:51:08

C#運(yùn)算符算術(shù)運(yùn)算符

2009-08-12 10:47:03

C#運(yùn)算符重載

2009-09-04 13:18:10

C#允許運(yùn)算符重載

2009-08-12 10:56:47

C#運(yùn)算符重載C#運(yùn)算符重載實(shí)例

2009-08-14 10:16:57

C#運(yùn)算符重載

2009-08-11 16:03:13

C#運(yùn)算符

2009-08-12 10:37:13

C#運(yùn)算符重載

2009-08-12 11:20:51

C#運(yùn)算符重載

2009-08-18 17:42:12

C#操作符重載

2009-08-12 10:20:52

C#位運(yùn)算符

2009-08-12 15:02:49

C#賦值運(yùn)算符簡(jiǎn)單賦值運(yùn)算符

2009-08-12 15:20:18

C#賦值運(yùn)算符復(fù)合賦值運(yùn)算符

2009-11-06 13:57:52

C#

2009-08-11 14:16:38

C# New運(yùn)算符

2009-08-12 13:35:22

C#關(guān)系運(yùn)算符

2009-09-01 10:08:57

C#運(yùn)算符

2009-08-12 14:29:32

C#條件運(yùn)算符

2009-08-12 14:49:33

C#移位運(yùn)算符
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)