Riferimenti in C++ e passaggio parametri per riferimento

di zio_mangrovia il
5 risposte
Mi sorge un dubbio, nel C++ sono stati introdotti i riferimenti che in sostanza rappresentano un alias delle variabili e se vuoi passare un parametro ad una funzione per riferimento basta semplicemente dichiararlo nel parametro formale con il simbolo &.
In C ricordavo invece questa forma, è stata abbandonata?
void quadrato(int* f)
{
*f=(*f)*(*f);
}

...
int p=2;
quadrato(&p);
...
Immagino sia molto più scomodo lavorare con i puntatore quindi si preferisce usare i riferimenti, poi ovviamente dipende da quello che devi fare ma in quasi tutti gli esempi che ho visto sul mio testo si usa la notazione con i riferimenti.
Cosa ne pensate?
PS
il compilatore accetta anche la vecchia forma, non fa una piega.

5 Risposte

  • Di quale "vecchia forma" parli, non ti capisco.
  • Studiando il C molti anni fa mi hanno insegnato che l'unico modo per passare una variabile ad una funzione per riferimento era come nel codice prima citato che ho espresso forse in modo improprio chiamandolo "vecchia forma"
  • Cioè passando il puntatore? Si può sempre fare, nessuno lo vieta. Non capisco ancora il nocciolo del problema.
  • E' una forma quasi abbandonata in favore dei riferimenti visto che è più agevole?
  • No assolutamente
Devi accedere o registrarti per scrivere nel forum
5 risposte