1. 程式人生 > >class A<T> where T:new()

class A<T> where T:new()

int new clas 支持 類型 參數 class a HERE 表名

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的接口

class A<T> where T:new()