Bene, dunque esistono dei tipi Value e dei tipi Reference. I primi vengono memorizzati come valori scritti nello stack, i secondi vengono memorizzati nell'heap e il loro indirizzo viene memorizzato nello stack.
Per il tipo Value, nel momento in cui io dichiaro una variabile senza assegnazione, il suo valore appare zero. Per il tipo reference, nel momento in cui io dichiaro una variabile senza assegnazione, ottengo una segnalazione di errore, perchè non esiste niente nello heap il cui indirizzo io possa memorizzare nello stack.
In pratica, la variabile con cui io indico un tipo Value è una variabile, mentre quella con cui io indico un tipo Reference è un puntatore. La differenza viene fatta dal sistema, non da me esplicitamente come nel C++.
Nessun commento:
Posta un commento