Sdílet prostřednictvím


Parametry obecného typu (Průvodce programováním v C#)

V definici obecného typu nebo metody je parametr typu zástupný symbol pro konkrétní typ, který klient určí při vytváření instance obecného typu. Obecnou třídu, například GenericList<T> uvedenou v úvodu do obecných typů, nelze použít tak, jak je, protože ve skutečnosti není typem; je spíše jako podrobný plán pro typ. Chcete-li použít GenericList<T>, klientský kód musí deklarovat a vytvořit instanci vytvořeného typu zadáním argumentu typu uvnitř úhlových závorek. Argument typu pro tuto konkrétní třídu může být libovolný typ rozpoznaný kompilátorem. Lze vytvořit libovolný počet vytvořených instancí typu, z nichž každý používá jiný argument typu:

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

V každé z těchto instancí je GenericList<T>každý výskyt T třídy nahrazen za běhu argumentem typu. Pomocí této náhrady jsme vytvořili tři samostatné typově bezpečné a efektivní objekty pomocí jedné definice třídy. Další informace o tom, jak se tato náhrada provádí modulem CLR, najdete v tématu Obecné typy v modulu runtime.

Zásady vytváření názvů pro parametry obecného typu najdete v článku o konvencích vytváření názvů.

Viz také