Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Differenza tra la keyword ref e i puntatori
Forum - C# / VB.NET - Differenza tra la keyword ref e i puntatori

Avatar
Nullable (Normal User)
Expert


Messaggi: 217
Iscritto: 12/07/2011

Segnala al moderatore
Postato alle 19:59
Mercoledì, 03/08/2011
Questo topic è stato chiuso dal moderatore

Ragazzi qual è la differenza tra la keyword ref e i puntatori ? Insomma, la keyword ref serve per passare il riferimento di un oggetto ad una funzione. Qual è dunque la differenza ? Per usare i puntatori ( che in teoria si dovrebbero utilizzare solo quando è veramente necessario ) bisogna utilizzare la keyword unsafe in modo che il codice non passi dal CLR ma dal compilatore JIT. A questo punto mi viene da pensare che la keyword ref sia uguale ai puntatori ma che sia gestita dal CLR.

Non ho tutta la necessità di sapere questa roba, sono solo curioso :P

Ultima modifica effettuata da Nullable il 03/08/2011 alle 20:03
PM
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Up
3
Down
V
Segnala al moderatore
Postato alle 11:03
Giovedì, 04/08/2011
Tutti gli oggetti di tipo reference sono costituiti in memoria da un puntatore sullo stack e da un blob di dati nello heap managed. Quindi quando passi una variabile che contiene un oggetto di tipo reference, implicitamente passi il suo puntatore. Lo stesso avviene per i tipi di dato value quando sono preceduti dalla keyword ref o out. In quel caso viene creato un puntatore alla zona di memoria ove il dato risiede.

Ah bene, mi hai risolto un grande dubbio, grazie :) - Nullable - 04/08/11 13:52
PM