2011-12-21 62 views
0

我有一個關於功能「數據訪問應用程序塊」EntLib中的研究。我發現一些代碼:.NET Framework的新功能?

public static class MapBuilder<TResult> where TResult : new() 
{ 
    //... 
} 

我不明白這個類的聲明的含義當使用「,其中TResult:新的()」。我認爲這是.NET Framework中的新功能來聲明一個類。請給我一個文件或鏈接來解釋這個功能。謝謝。

回答

6

這是一個泛型類型參數約束。自從泛型引入以來,它一直存在於.net 2.0中。

Constraints on Type Parameters (MSDN)

你所提到的具體的約束意味着只有與公共參數構造函數可以被用作類型TResult類。


參見:Generics (MSDN)

1

where TResult : new()添加constraint on the generic類型參數(TResult)。類型參數必須有一個無參數的構造函數。