Wartość NULL oraz typy nie będące referencjami

W programach często wykorzystujemy wartość NULL do określenia np. czy operacja została prawidłowo wykonana. Niestety w przypadku typów “VALUE” nie można wykorzystać bezpośrednio wartości NULL ponieważ przetrzymują one wartość a nie adres komórki w pamięci.

Jeśli jednak mimo wszystko chcemy wykorzystać do porównania NULL, istnieje taka możliwość poprzez strukturę Nullable:

Nullable<int> value = 5;
value = null;
System.Diagnostics.Debug.Assert(value == null);

Ponadto c# dostarcza pewien skrót składniowy i zamiast pisać Nullable<int>wystarczy int?:

  int? value = 5;
  value = null;
  System.Diagnostics.Debug.Assert(value == null);

Leave a Reply

Your email address will not be published.