C 擴充套件方法 總結

2021-09-25 14:17:00 字數 542 閱讀 4312

擴充套件方法是靜態方法,它是類的一部分,但實際上沒有放在類的源**中。

設計乙個money類

1

public

class

money29

public

override

string

tostring()

1013 }

假設向money類中新增乙個方法addtoamount,但是程式的源**不能直接修改,此時就需要建立乙個靜態類,將方法addtoamount()新增為乙個靜態方法,對應**如下:

public

static

class

moneyextension

}

對於擴充套件方法,第乙個引數是要擴充套件的型別,它放在this關鍵字的後面,這就告訴編譯器,這個方法是money類的一部分。

在執行新方法的時候,不需要第乙個引數,如下:

1 cash1.addtoamount(10m);

即使擴充套件方法是靜態的,也要使用標準的例項方法語法。

C 擴充套件方法 白話總結

我們在變成的時候時常遇到這樣的問題,new了乙個系統內的物件之後,我們想要對該物件有乙個方法可是卻點不出來,說明該物件本身沒有宣告該方法,可是微軟又不允許我們去該物件的 怎麼辦?在c 3.0 微軟加入了擴充套件方法,那麼擴充套件方法怎麼用呢?比如我們需要在int裡面 生命乙個方法,返回的值是int ...

C 擴充套件方法

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

C 擴充套件方法

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