Dela via


Allmänna typparametrar (C#-programmeringsguide)

I en allmän typ- eller metoddefinition är en typparameter en platshållare för en viss typ som en klient anger när de skapar en instans av den generiska typen. En generisk klass, till exempel GenericList<T> i Introduktion till generiska objekt, kan inte användas som den är eftersom den egentligen inte är en typ. Den är mer som en skiss för en typ. Om du vill använda GenericList<T>måste klientkoden deklarera och instansiera en konstruerad typ genom att ange ett typargument inom vinkelparenteserna. Typargumentet för den här klassen kan vara vilken typ som helst som identifieras av kompilatorn. Valfritt antal konstruerade typinstanser kan skapas, var och en med ett annat typargument, enligt följande:

GenericList<float> list1 = new GenericList<float>();
GenericList<ExampleClass> list2 = new GenericList<ExampleClass>();
GenericList<ExampleStruct> list3 = new GenericList<ExampleStruct>();

I var och en av dessa instanser av GenericList<T>ersätts varje förekomst av T i klassen vid körning med typargumentet. Med den här ersättningen har vi skapat tre separata typsäkra och effektiva objekt med hjälp av en enskild klassdefinition. Mer information om hur den här ersättningen utförs av CLR finns i Generics i Runtime.

Du kan lära dig namngivningskonventionerna för generiska typparametrar i artikeln om namngivningskonventioner.

Se även