1. 程式人生 > >C# T 泛型類,泛型方法的約束條件用法

C# T 泛型類,泛型方法的約束條件用法

類型變量 where class a 實現 fin 關系 int -h 支持

class A<T> where T:new()

這是類型參數約束,where表名了對類型變量T的約束關系。where T:A 表示類型變量是繼承於A的,或者是A本省。where T: new()指明了創建T的實例應該使用的構造函數。

.NET支持的類型參數約束有以下五種:

where T: struct T必須是一個結構類型

where T: class T必須是一個類(class)類型,不是結構(structure)類型

where T: new() T必須要有一個無參構造函數

where T: NameOfBaseClass T必須繼承名為NameOfBaseClass的類

where T: NameOfInterface T必須實現名為NameOfInterface的接口

C# T 泛型類,泛型方法的約束條件用法