DIFFERENZA TRA VALUE TYPE E 
    REFERENCE TYPE




Premessaquando definiamo una variabile di un certo tipo, stiamo allocando e preparando uno spazio della memoria a contenere un dato del tipo specificato. 

Value Type: se lo spazio di memoria posto a contenerlo contiene proprio il valore assegnato al dato. Quindi, è un dato in cui la variabile stessa rappresenta la locazione di memoria del dato, cioè la variabile immagazzina direttamente il dato.
 Fra i tipi di valore sono inclusi tutti i tipi di dati numerici, Boolean, CharDate, Integer, Decimal, Byte e tutte le strutture anche se i relativi membri sono tipi riferimento.

Reference Type: se lo spazio di memoria allocato per contenerlo non contiene direttamente il dato ma un puntatore ad un altro spazio di memoria. 
Questo determina un carico maggiore nella memoria, ma permette di accedere alle variabili di altre classi.
Fra i tipi di riferimento sono inclusi: string, array(anche se i loro elementi sono value types), classdelegates. 
Avviene la distinzione tra questi due tipi in quanto, in alcuni casi, i dati sono talmente tanti che non si possono immagazzinare in un’unica variabile. 

Commenti

Post popolari in questo blog