Condividi tramite


Parametri di tipo generico (Guida per programmatori C#)

In una definizione di tipo o metodo generico, un parametro di tipo è un segnaposto per un tipo specifico che un client specifica quando crea un'istanza del tipo generico. Una classe generica, ad esempio GenericList<T> elencata in Introduzione ai generics, non può essere usata as-is perché non è realmente un tipo. È più simile a un progetto per un tipo. Per usare GenericList<T>, il codice client deve dichiarare e creare un'istanza di un tipo costruito specificando un argomento di tipo all'interno delle parentesi angolari. L'argomento di tipo per questa particolare classe può essere qualsiasi tipo riconosciuto dal compilatore. È possibile creare un numero qualsiasi di istanze di tipo costruito, ognuna usando un argomento di tipo diverso, come indicato di seguito:

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

In ognuna di queste istanze di GenericList<T>, ogni occorrenza di T nella classe viene sostituita in fase di esecuzione con l'argomento di tipo . Grazie a questa sostituzione, abbiamo creato tre oggetti sicuri rispetto ai tipi e efficienti tramite una singola definizione di classe. Per altre informazioni su come questa sostituzione viene eseguita da CLR, vedere Generics in runtime.

È possibile apprendere le convenzioni di denominazione per i parametri di tipo generico nell'articolo sulle convenzioni di denominazione.

Vedere anche