[C# Story] – L’operatore AS
Inizio oggi questa serie che, per motivi di studio e di cambio linguaggio, mi porta a prendere nota di alcune caratteristiche specifiche del linguaggio C#, nella fattispecie nella sua versione 3.0.
Alcuni snippet della serie ovviamente saranno validi anche e soprattutto per la versione precedente, la 2.0.
Come specificato su Msdn :
L'operatore as è utilizzato per eseguire conversioni
tra tipi di riferimento compatibili
Nella sezione Note viene correttamente spiegato meglio perchè preferire questo tipo di conversione: L’operatore as è simile a un’operazione cast.
Se tuttavia la conversione non è possibile, as restituisce null (Nothing in Visual Basic) anziché generare un’eccezione.
In termini più formali, un’espressione con il seguente formato:
expression as type
equivale a :
expression is type ? (type)expression : (type)null
con la differenza che expression viene valutato solo una volta.
È possibile utilizzare l’operatore as soltanto con le conversioni di riferimento e le conversioni boxing , mentre as non può eseguire altre conversioni,
come quelle definite dall’utente, che devono invece essere eseguite tramite le espressioni cast.



Lascia un commento