Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W definicji typu ogólnego lub metody, parametr typu działa jako symbol zastępczy dla konkretnego typu, który klient wskazuje, gdy tworzy instancję typu ogólnego. Nie można as-is użyć klasy ogólnej, takiej jak GenericList<T>, opisanej w Wprowadzenie do Typów Ogólnych, ponieważ nie jest to rzeczywisty typ; jest bardziej jak szkic typu. Aby użyć GenericList<T>, kod klienta musi zadeklarować i utworzyć wystąpienie skonstruowanego typu, określając argument typu w nawiasach kątowych. Argument typu dla tej konkretnej klasy może być dowolnym typem rozpoznawany przez kompilator. Można utworzyć dowolną liczbę wystąpień typu, z których każdy korzysta z innego argumentu typu, w następujący sposób:
GenericList<float> list1 = new GenericList<float>();
GenericList<ExampleClass> list2 = new GenericList<ExampleClass>();
GenericList<ExampleStruct> list3 = new GenericList<ExampleStruct>();
W każdym z tych wystąpień GenericList<T> w klasie, każde wystąpienie T w klasie jest zastępowane w czasie wykonywania argumentem typu. Dzięki temu podstawieniu utworzyliśmy trzy oddzielne obiekty bezpieczne i wydajne typu przy użyciu jednej definicji klasy. Aby uzyskać więcej informacji na temat sposobu wykonywania tego podstawienia przez CLR, zobacz Typy ogólne w środowisku uruchomieniowym.
Konwencje nazewnictwa dla parametrów typu ogólnego można znaleźć w artykule dotyczącym konwencji nazewnictwa.