當我們想為乙個類新增新功能,最常用的方法就是直接修改類的定義
如果不想修改原型別我們可以給類乙個擴充套件方法
例如,下面是一段字典的使用
paneldict = new dictionary();
basepanel panel;
paneldict.trygetvalue(paneltype, out panel);
下面對該字典進行擴充套件
//靜態類
public static class dictionaryextension
}
該方法可以總結為乙個this ,兩個static
於是獲取字典值的過程變成如下
this dictionarydict 即是panelpathdict
//string path;
out path);
string path = panelpathdict.tryget(paneltype);
C 擴充套件方法
c 語言從3.0開始增加了乙個很特別的功能 擴充套件方法。那麼擴充套件方法起什麼作用呢?很多時候我們想為已經存在的類擴充套件某些功能,而又沒有必要去繼承該類,甚至有時候這個類根本就不允許繼承,如string類,這時候就可以使用擴充套件方法來為其擴充套件功能。下面舉例說明 一 我們建立乙個類庫如下 c...
C 擴充套件方法
c 語言從3.0開始增加了乙個很特別的功能 擴充套件方法。那麼擴充套件方法起什麼作用呢?很多時候我們想為已經存在的類擴充套件某些功能,而又沒有必要去繼承該類,甚至有時候這個類根本就不允許繼承,如string類,這時候就可以使用擴充套件方法來為其擴充套件功能。下面舉例說明 一 我們建立乙個類庫如下 c...
C 擴充套件方法
使用 net 3.0之後,我一直都覺得有種方法很奇怪,這種方法在一般的方法前面多了乙個藍色的向下箭頭。這種方法其實是擴充套件方法,這種擴充套件方法不需要去修改原類。class program public static class extendfunction 例子中我定義了乙個擴充套件方法,這個方...