Hola, tengo una duda, para explicarla pongo un ejemplo:
int valor=10;
int *p=&valor;
//Si llamamos a una función cualquiera de la siguiente manera
void Cuadrado (int *p) { *p=3; }
//¿Sería igual que llamarla de esta otra?
void Cuadrado (int &valor) { valor=3; }
//En la primera llamada, se pasa como parametro un puntero que contiene una dirección de memoria, y en la segunda, se hace un paso por referencia de la variable valor, de las dos formas se pasa la dirección de memoria de la variable valor, asi que, daría igual de la forma en que se llamase ya que en las dos se le pasa la misma dirección, no?
Gracias de antemano