View Full Version : [C++]Reference e Puntatori
Ma se in C++ ho i reference perche dovrei usare i puntatori??
Non basta che se il parametro passato puo essere NULL o cancellato nella funz sia un puntatore o in tutti gli altri un reference???
Tnk
/\/\@®¢Ø
08-05-2004, 21:12
Prima di tutti i puntatori "arrivano" dal C, e non si potevano eliminare senza perdere la compatibilita'.
Poi non sempre quello che fai con i puntatori riesci a farlo facilmente con i riferimenti. Ad esempio puoi avere puntatori a puntatori, ma non riferimenti a riferimenti. Non mi viene in mente una alternativa semplice al seguente frammento di codice:
void foo( int** x )
{
int* y = new int(10);
*x = y;
}
l'utilizzo dei puntatori in c++ è ancora una cosa fondamentale.
Iniziamo a dire....come faresti a fare allocazioni dinamiche? e non solo....vuoi mettere le potenzialità e la facilità messe a disposizione dall'algebra dei punttori nella gestione della memoria?
Faccio qualche consid ma...scritta male ho una tastiera...va be lasciamo stare...cmq nn posso ins graffe
immagina di aver un indirizzo di memoria e di voler sapere se il valore "del prossimo" byte è un numero dispari.
bool func(void *param)
char *pnt=NULL;
pnt = param;
pnt++;
return(*pnt&0x01);
nn ne trovi benificio semplimente perchè utilizzi macchine spinte e con una quantità di RAM allucinante e di non avere vincoli prestazionali
Nel pass di argomenti in metod...io consiglio sempre i reference anche perchè il pasagg a punt significa fare un pass per copia di un tipo puntatore(es 4byte) metre quello per reference...è una cosa complessa da spiegare ma...non viene fatta alcuna copia.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.