02/10/2010, 22:16
|
| | Fecha de Ingreso: enero-2008
Mensajes: 229
Antigüedad: 16 años, 9 meses Puntos: 1 | |
Respuesta: Porque no es ncesario bueno antes que nada, vamos a ir por partes, en C existes dos formas de pasar una variable, por referencia y por apuntador, C++ añade una mas que es por referencia.
la diferencia entre pasar una variable por apuntador y por referencia es:
1. para pasar una variable por referencia se utiza en la declaracion de la funcion &, y por puntero *, pasar un arreglo de elemento es pasar por punteros
ej
void prueba1(int *var);//paso por puntero, un arreglo tambien se puede pasar asi
void prueba2(int &var);// paso por referencia
int main{
int var;
prueba1(&var);
prueba2(var);
}
cuando es un puntero y tu añades & tu puedes modifcar la direccion del puntero, cosa que no seria posible si no lo utilizaras, ej
void prueba3(int *&puntero)
{
puntero = new int[20];
}
int main()
{
int *puntero = NULL;
prueba1(puntero3); // no se puede cambiar la direccion del puntero
prueba3(&puntero3);// es posible cambiar la direccion del puntero
} |