Nella versione 2.0 del framework sono stati introdotti i Nullable Types, un particolare tipo di dato, facente parte della categoria dei "Value Types", utile a dichiarare una variabile senza doverla valorizzarla in fase di dichiarazione.
Era proprio una mancanza questa, ormai colmata dai tipi nulli.
Questa la sintassi C# e VB.NET per utilizzare i Nullable Types:

C#
Nullable<bool> b = null;


//oppure
bool? b = null;

VB.NET
Dim b As Nullable(Of Boolean) = Nothing

In questi modi, la variabile b non ha alcun valore. In seguito, possiamo controllare se questa viene valorizzata durante il corso dell'esecuzione del programma, attraverso la proprietà HasValue e, in caso affermativo, possiamo recuperarne il valore attraverso la proprietà Value.
E' da notare che queste due proprietà sono appartenenti alla classe System.Nullable e non al tipo Boolean.

C#
if (b.HasValue)

Console.WriteLine("Il valore di b è: {0}", b.Value);
else
Console.WriteLine("b non ha valore");

VB.NET
If b.HasValue Then

Console.WriteLine("b is {0}.", b.Value)
Else
Console.WriteLine("b is not set.")



TAGS: [Nullable types] [Generics] [.NET Framework 2.0]
Commenti(1) - Posted @ 4/25/2007 2:17:15 PM - Categoria: .NET 2.0 - Permalink - Share on twitter | facebook


COMMENTI
Autore: Luca - scritto il 12/12/2010 9:39:11 PM
In VB.NET, al posto di scrivere
Dim b As Nullable(Of Boolean) = Nothing

puoi benissimo sintetizzare con
Dim b As Boolean? = Nothing

Ho anche visto la sintassi seguente
Dim b? As Boolean = Nothing

ma non l'ho ancora testata.

INSERISCI UN COMMENTO

Nome *
Indirizzo e-mail
(non verrà pubblicato)
Commento *