c# c sharp

Tipi di dati


Casting:il Cast richiama espicitamente la conversione da un tipo ad un altro tipola conversione infatti può essere implicita:int i = 10;float f = 0;f = i;oppure esplicita utilizzando il Castdouble x = 1234.7;int a;a = (int)x;System.Console.WriteLine(a);Boxing e unboxing :Consentono di gestire i tipi di valore come oggetti.Il boxing di un tipo di valore consente di assemblarlo all'interno diun'istanza del tipo di riferimento Object e quindi di archiviarlo nell'heap sottoposto a Garbage Collection ( non è più possibile richiedere esplicitamente di liberare la memoria utilizzata da un oggetto, ovvero terminare tale oggetto in modo deterministico,ma si lascia che il sistema esegua questa operazione automaticamente, nel momento in cui lo riterrà più opportuno per migliorare le prestazioni complessive )int i = 123;object o = (object)i; // boxingo = 123;i = (int)o; // unboxing dalla classe objectRispetto alle semplici assegnazioni, il boxing e l'unboxing sonoprocessi onerosi dal punto di vista del calcolo. Il boxing di un tipodi valore comporta infatti l'allocazione e la costruzione di un oggettocompletamente nuovo. A un livello inferiore, anche il cast richiestoper l'unboxing è oneroso dal punto di vista del calcolo.