elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  C/C++ Dudas parámetros
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 4 Ir Abajo Respuesta Imprimir
Autor Tema: C/C++ Dudas parámetros  (Leído 7,241 veces)
h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
C/C++ Dudas parámetros
« en: 23 Mayo 2010, 16:00 pm »

He visto que en C los pasos por referencia se hacen de la siguiente manera:

Código
  1. int funcion(int *a, int *b);

En C++, he visto que se puede utilizar directamente:

Código
  1. int funcion(int &a, int &b);

En C++ es optativo utilizar cualquiera de las dos? Es decir, queda a disposición de la comodidad del programador?


En línea

.:BlackCoder:.


Desconectado Desconectado

Mensajes: 388


Cada dia C++!!


Ver Perfil
Re: C/C++ Dudas parámetros
« Respuesta #1 en: 23 Mayo 2010, 17:02 pm »

Creo que no son la misma cosa.. para mi no lo son... Yo se un poco de C++ y pes prefiero usar las referencias... Por que? Bueno para empezar por comodad porq es mejor hacer...

Código
  1. int funcion(int &a, int &b){
  2. return a+b;}

que...
Código
  1. int funcion(int *a, int *b){
  2. return *a+*b;}
:xD
Ademas... eso depende de que quieras hacer con la funcion... recuerda que lo punteros solo deben utilizarse (segun yo  :xD) para memoria dinamica, si no no tendria sentido... para eso estan los arrays y las referencias...

Espero estar en lo correcto, y haberte ayudado...

Saludos...


En línea

"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja



h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: C/C++ Dudas parámetros
« Respuesta #2 en: 23 Mayo 2010, 17:12 pm »

Exacto, yo también lo veo desde el punto de vista: "Comodidad"... En cuanto a la utilización de punteros en memoria dinámica también lo veo correcto. Pero bien, no sé cuál opción de las primeras es la preferible, tal vez haya algún ingeniero en software que quiera dar su opinión.
En línea

^Winder^


Desconectado Desconectado

Mensajes: 2.776


El mundo no es tuyo, es de todos.


Ver Perfil
Re: C/C++ Dudas parámetros
« Respuesta #3 en: 23 Mayo 2010, 17:43 pm »

Lo primero son un paso de punteros y lo segundo son un paso de referencias a valores (paso por referencia), no es lo mismo, de hecho se pueden combinar las dos, puedes pasar punteros por referencia, así si por ejemplo creas un puntero a algún objeto y lo pasas por referencia puedes cambiar dentro de la función el objeto al que apunta, si pasaras solo el puntero no podrías :)

No sé si se me entiende.
En línea


Yo apoyo la esperanza de Caylees. Frenemos la Leucemia:
www.cayleeshope.com
Libertad conquistada.  (Justicia ;-))
h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: C/C++ Dudas parámetros
« Respuesta #4 en: 23 Mayo 2010, 17:47 pm »

No he podido entender.

En C teóricamente el paso por referencia se hace con punteros, según había entendido, por ejemplo:

Código
  1. void swap(int *a, int *b)
  2. {
  3.      int aux;
  4.      aux = *a;
  5.      *a = *b;
  6.      *b = aux;
  7. }

En C++, creo que sería de la siguiente forma:

Código
  1. void swap(int &a, int &b)
  2. /* Tambien creo que se pueden emular la función con punteros */
  3. /* Esa es mi duda, ¿cuál es la opción correcta? */
  4. {
  5.      int aux;
  6.      aux = a;
  7.      a = b;
  8.      b = aux;
  9. }

Aunque también, sabía que se podían pasar punteros por referencia sin ningún problema.
En línea

.:BlackCoder:.


Desconectado Desconectado

Mensajes: 388


Cada dia C++!!


Ver Perfil
Re: C/C++ Dudas parámetros
« Respuesta #5 en: 23 Mayo 2010, 17:54 pm »

por ejemplo creas un puntero a algún objeto y lo pasas por referencia puedes cambiar dentro de la función el objeto al que apunta, si pasaras solo el puntero no podrías :)

Como que no?... yo puedo modificar con un puntero los objetos apuntados... Asi sea en una funcion... La unica forma de evitarlo es pasandolo constante (con la palabra reservada const) de resto si se puede... Si estoy errado alguien que me lo aclare...

Saludos...
En línea

"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja



h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: C/C++ Dudas parámetros
« Respuesta #6 en: 23 Mayo 2010, 18:05 pm »

Creo que no estás errado, por eso puse el ejemplo citado.
En línea

.:BlackCoder:.


Desconectado Desconectado

Mensajes: 388


Cada dia C++!!


Ver Perfil
Re: C/C++ Dudas parámetros
« Respuesta #7 en: 23 Mayo 2010, 18:43 pm »

A mi no me prestes atencion porque no soy ingeniero en software... :(

 :laugh: ;-)
En línea

"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja



h0oke


Desconectado Desconectado

Mensajes: 2.059


Coder ~


Ver Perfil WWW
Re: C/C++ Dudas parámetros
« Respuesta #8 en: 23 Mayo 2010, 18:50 pm »

A mi no me prestes atencion porque no soy ingeniero en software... :(

 :laugh: ;-)
:xD y tu crees que a mi me importa? El foro está hecho para compartir opiniones, sean erradas o no... de todas maneras siempre se termina aprendiendo...
En línea

.:BlackCoder:.


Desconectado Desconectado

Mensajes: 388


Cada dia C++!!


Ver Perfil
Re: C/C++ Dudas parámetros
« Respuesta #9 en: 23 Mayo 2010, 19:03 pm »

No se si te importara pero me parecio comico el comentario:
Pero bien, no sé cuál opción de las primeras es la preferible, tal vez haya algún ingeniero en software que quiera dar su opinión.
Debe ser por el fastidio que tengo... Ando haciendole unas diapositivas a una amiga...  :¬¬
En línea

"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja



Páginas: [1] 2 3 4 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Dudas con parametros para este método
Java
GaudyG 1 2,396 Último mensaje 4 Julio 2011, 02:38 am
por Valkyr
Dudas: Parametros remplazables | Programación Batch
Scripting
miguel_s777 1 2,858 Último mensaje 8 Octubre 2011, 18:17 pm
por leogtz
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines