| 約束 | 說明 |
|---|---|
| where T: struct | 類型參數必須是值類型。 可以指定除 Nullable 以外的任何值類型。 有關更多信息,請參見使用可以為 null 的類型(C# 編程指南)。 |
| where T : class | 類型參數必須是引用類型;這一點也適用於任何類、接口、委托或數組類型。 |
| where T : new() | 類型參數必須具有無參數的公共構造函數。 當與其他約束一起使用時,new() 約束必須最后指定。 |
| where T : <base class name> | 類型參數必須是指定的基類或派生自指定的基類。 |
| where T : <interface name> | 類型參數必須是指定的接口或實現指定的接口。 可以指定多個接口約束。 約束接口也可以是泛型的。 |
| where T : U | 為 T 提供的類型參數必須是為 U 提供的參數或派生自為 U 提供的參數。 |
