擴充套件方法用法整理

2022-05-10 06:11:49 字數 753 閱讀 1713

擴充套件方法貌似平時很少用,平時基本都是用靜態方法,其實靜態方法也挺方便的。

class

program

;var age = p.getage();//

擴充套件方法呼叫起來更順眼

age = extensionclass.getage2(p);//

靜態方法呼叫

console.readkey();}}

public

static

class extensionclass//

注意擴充套件方法的類不能放到program類裡面,這樣擴充套件方法就會報錯

public

static

int getage(this person person)//

擴充套件方法

}public

class

person

public datetime? deathtime

}

上面所有的都只是擴充套件方法的附加用處,擴充套件方法真正的威力是為linq服務的(主要體現於ienumerable和iqueryable)。下面簡單列舉個例子:

例:

public

static ilistmywhere(this ilistlist, funcbool>func)

return

newlist;

}

總結擴充套件方法的定義規則:靜態類裡面宣告靜態方法,方法(擴充套件方法)第乙個引數(被擴充套件的型別)前面加「this」;

Sass用法及常用方法整理

a body.firefox 編譯為 a a hover body.firefox a 必須作為選擇器的第乙個字元,其後可以跟隨字尾生成復合的選擇器,例如 main 編譯為 main main sidebar.funky 編譯為 funkysassscript 最普遍的用法就是變數,變數以美元符號開...

nginx功能擴充套件整理

0 基本負載均衡配置 更新 etc nginx conf.d default.conf,配置反向 location 重新啟動nginx sudo service nginx restart1 子請求 當乙個請求發起乙個 子請求 的時候,依照 nginx 的術語,習慣把前者稱為後者的 父請求 pare...

bitset 用法整理

建構函式 bitsetb b有n位,每位都為0.引數n可以為乙個表示式.如bitset 5 b0 則 b0 為 00000 bitsetb unsigned long u b有n位,並用u賦值 如果u超過n位,則頂端被截除 如 bitset 5 b0 5 則 b0 為 00101 bitsetb s...