Logo UGIdotNET

Usare gli object initializer

I compilatori "v2008" dei linguaggi C# e VB offrono una comoda feature chiamata object initializers, utile per impostare lo stato iniziale delle proprietà di un oggetto senza la necessità di implementare un apposito costruttore parametrico. Data la classe Persona dotata delle proprietà (o campi pubblici) Nome e Cognome di tipo string, sarà possibile istanziarla e impostarne contestualmente il valore delle proprietà mediante la sintassi:

C#
Persona p = new Persona{Nome = "Mario", Cognome = "Rossi"};

VB
Dim p As New Persona With {.Nome = "Mario", .Cognome = "Rossi"}

C# permette, inoltre, di inizializzare in questo modo anche le istanze dei tipi che implementano l'interfaccia IEnumerable:

C#
List<Persona> persone = new List<Persona>()
{
    new Persona{Nome = "Mario", Cognome = "Rossi"},
    new Persona{Nome = "Luca", Cognome = "Bianchi"}
};

Autore: Andrea Saltarello
Data: 17 dicembre 2007
Ultimo aggiornamento: 17 dicembre 2007
Categorie:  C#

© 2001 User Group Italiano UGIdotNET. Tutti i diritti riservati. Note legali. - Partita IVA 01927050185