C 基礎 擴充套件方法的應用

2022-01-11 07:44:29 字數 674 閱讀 8157

最近對擴充套件方法比較感興趣,就看了看資料,記錄一下擴充套件方法的幾種方法.

一. 擴充套件方法的基本使用:  

note: 1. 擴充套件方法必須在靜態類中, 2 擴充套件方法必須宣告靜態方法,3 擴充套件方法裡面不能呼叫其他自定義方法。

public

static

int trytoint(this

string

intstr)

public

static ienumerable startswith(this ienumerable ie, string

startstr)

return

returnie;

}

二. 擴充套件方法之泛型: 上面都是對擴充套件方法的型別寫死了,擴充套件方法一樣支援泛型:

public static bool isbetween(this t value, t low, t high) where t : icomparable

三. 泛型方法之委託: 泛型方法可以支援委託,跟方便我們對資料的操作,下面來模擬集合的foreach方法.

public

static

void each(this ienumerableitems, actionaction)

}

C 的擴充套件方法應用

1.問題提出 有時候,我希望能夠呼叫乙個方法判斷乙個string型別是否是合法的郵箱位址字串。一般的可以採取以下方法 定義乙個專門的靜態工具類,名為stringformatchecker,並在其中定義乙個方法,名為checkmailaddrformat,用於測試該字串是否是合法的郵箱位址格式。pub...

C 中擴充套件方法應用

擴充套件方法是c 3.0 中新增特性,可在不修改源類 情況,通過add file 模式對源 功能擴充套件。擴充套件方法要求如下 a.擴充套件方法需包含在 static 修飾類中.b.擴充套件實現需是靜態形式。c.擴充套件方法第乙個引數 字首為 this 表示需要擴充套件類物件,從第二個引數開始,為擴...

c 高階應用 理解擴充套件方法

1 它必須在乙個非巢狀的,非泛型的靜態類中 2 它至少有乙個引數 3 第乙個引數必須加上this關鍵字作為字首 4 第乙個引數不能有任何其他的修飾符 比如out或ref 5 第乙個引數的型別不能是指標型別 for example public class person 擴充套件方法的建立 publi...