Sommario:
Definizione - Cosa significa Operatore Typeof?
L'operatore Typeof, in C #, è un operatore utilizzato per determinare il tipo di parametro passato ad esso. Restituisce l'oggetto System.Type associato a quel tipo, che contiene tutti i dettagli relativi al tipo specificato.
La funzionalità di reflection nel framework .NET è un potente meccanismo mediante il quale è possibile conoscere e utilizzare le funzionalità di un tipo in fase di esecuzione. L'operatore typeof utilizza le capacità di reflection per interrogare le informazioni relative sia al valore che ai tipi di riferimento come costruttori, eventi, campi, proprietà, modulo e assembly in cui viene distribuito il tipo.
L'operatore typeof può essere utilizzato come parte di un'espressione per ottenere il riferimento dell'oggetto Type per vari tipi utilizzati nell'unità di compilazione. Può essere utilizzato per visualizzare i riferimenti di tipo come stringhe e può anche essere assegnato a una variabile di tipo, System.Type o un campo. Viene utilizzato nei metodi statici Enum, nella classe DataTable e nei metodi di conversione di ArrayList.
Techopedia spiega Typeof Operator
L'operatore Typeof può essere utilizzato con uno dei seguenti parametri:- Un tipo che non è dinamico
- Un nome di tipo non associato che rappresenta un tipo generico con un elenco di argomenti. Questi sono specificati con virgole appropriate.
- la parola chiave "vuoto"
Ad esempio, un operatore typeof può essere utilizzato con StreamReader, un tipo definito nella libreria di framework .NET per archiviarlo in una variabile di System.Type. Questa variabile di tipo può quindi essere utilizzata per eseguire query per dettagli come il tipo di classe (astratto o concreto), i metodi, ecc.
L'operatore typeof può essere utilizzato per determinare i tipi pubblici definiti nello spazio dei nomi System.IO o System. Non può essere sovraccaricato con un'implementazione personalizzata.
Poiché l'operatore typeof utilizza la tecnica di riflessione per accedere alla descrizione dei metadati del tipo, rallenta quando viene utilizzato per il codice ottimizzato e quindi dovrebbe essere usato meno frequentemente. La memorizzazione del tipo restituito di un operatore typeof in una variabile statica può migliorare le prestazioni in alcuni casi.
