C 擴充套件方法奇思妙用 IsBetween 通

2021-06-21 22:24:44 字數 877 閱讀 6221

人員生日 isbetween 示例**如下:

var p1= new person; var p2= new person; var p3= new person; bool b6 = p2.isbetween(p1, p3, new personbirthdaycomparer());

類似,我們還可以對人員進行身高、體重、人品等其它方面的 isbetween 判斷,只需要傳入不同的 comparer。

針對 icomparable 介面的 isbetween 擴充套件

因為它實 icomparable 和 icomparable,所以可以和 int 和 double 進行比較,則可以如下使用:

bigint bi = new bigint(); bool b8 = bi.isbetween(10, 20); bool b9 = bi.isbetween(1.424e+12, 2.3675e+36);

( .net 中已經有了大整數型別,請參見:biginteger 結構,不過沒有實現 icomparable 和 icomparable )

其它比較擴充套件code.google.com/p/hebmg

有了上面的 isbetween 擴充套件,再寫其它比較擴充套件就易如反掌了,比如下面幾個:

lessthan lessorequals greatorequals greatthan

命名空間在擴充套件方法中的妙用

net的不同版本中,有很多方法是新加的,而且是以擴充套件方法的形式來呈現,但我們會發現引用的命名空間並沒有增加,請看下圖。這樣,在我們使用擴充套件方法的時候,不並不覺得是擴充套件方法,而是相當於例項中的原生方法。依據這一思路,我們在寫擴充套件方法的時候,也可以將擴充套件方法的命名空間與要擴充套件例項...

C 擴充套件方法

c 語言從3.0開始增加了乙個很特別的功能 擴充套件方法。那麼擴充套件方法起什麼作用呢?很多時候我們想為已經存在的類擴充套件某些功能,而又沒有必要去繼承該類,甚至有時候這個類根本就不允許繼承,如string類,這時候就可以使用擴充套件方法來為其擴充套件功能。下面舉例說明 一 我們建立乙個類庫如下 c...

C 擴充套件方法

c 語言從3.0開始增加了乙個很特別的功能 擴充套件方法。那麼擴充套件方法起什麼作用呢?很多時候我們想為已經存在的類擴充套件某些功能,而又沒有必要去繼承該類,甚至有時候這個類根本就不允許繼承,如string類,這時候就可以使用擴充套件方法來為其擴充套件功能。下面舉例說明 一 我們建立乙個類庫如下 c...