泛型型別參數 (C# 程式設計手冊)
在泛型型別或方法定義中,當型別參數建立泛型型別的執行個體時,它們是用戶端指定之特定類型的預留位置。 泛型類別,例如泛型簡介中所列的 GenericList<T>
,不能以現況使用,因為它其實不是類型,更像是類型的藍圖。 若要使用 GenericList<T>
,用戶端程式碼必須在角括弧內指定型別引數,宣告並具現化建構的類型。 此特定類別的型別引數可以是由編譯器辨識出的任何類型。 您可以建立任何數目的建構類型執行個體,每一個使用不同的型別引數,如下所示:
GenericList<float> list1 = new GenericList<float>();
GenericList<ExampleClass> list2 = new GenericList<ExampleClass>();
GenericList<ExampleStruct> list3 = new GenericList<ExampleStruct>();
這些 GenericList<T>
執行個體的每一個中,類別中出現的每個 T
,在執行階段會被型別引數取代。 透過這個替代,我們已經使用單一類別定義建立了三個類型安全且有效率的不同物件。 如需 CLR 如何執行此替代的詳細資訊,請參閱執行階段中的泛型。
您可以在命名慣例一文中了瞭解泛型型別參數的命名慣例。