In .net, i tipi di valori sono memorizzati su stack dove come tipi di riferimento sono memorizzati su heap gestito . Qual è la ragione di questo? Non è possibile scambiare le loro posizioni di archiviazione?
Lo stack è un'implementazione detail. L'importante è la distinzione reference / value.
Is it not possible to exchange their storage locations?
È molto facile memorizzare i tipi di valore sullo heap.
class ReferenceInt
{
public int Field;
}
ReferenceInt n = new ReferenceInt();
// n.Field is now stored on the heap.