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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Paso por valor y por referencia
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Paso por valor y por referencia  (Leído 1,689 veces)
RiCo9297

Desconectado Desconectado

Mensajes: 10


Ver Perfil
Paso por valor y por referencia
« en: 15 Agosto 2016, 16:41 pm »

Hola buenas me gustaría saber si alguien tiene unos apuntes o alguna manera de explicar cuando se usa el paso por valor o el paso por referencia ya que no lo comprendo demasiado bien, lo pido para c++ utilizando el & y no el *, muchas gracias.


« Última modificación: 15 Agosto 2016, 16:58 pm por RiCo9297 » En línea

class_OpenGL


Desconectado Desconectado

Mensajes: 437

Si usas Direct3D, no eres mi amigo :P


Ver Perfil
Re: Paso por valor y por referencia
« Respuesta #1 en: 15 Agosto 2016, 17:05 pm »

El paso por referencia se utiliza cuando quieres cambiar el valor de la variable/objecto dentro de la función. Creo que con un ejemplo se entenderá mejor:

Código
  1. #include <iostream>
  2.  
  3. void modificarInt(int &variable);
  4.  
  5. int main() {
  6.    int var = 0;
  7.  
  8.    modificarInt(var);
  9.  
  10.    std::cout << var << std::endl;
  11.  
  12.    return 0;
  13. }
  14.  
  15. void modificarInt(int &variable) {
  16.    variable = 5;
  17. }

Salida en consola de este programa:
Código:
5

Si en este ejemplo no se pasara por referencia, la función no haría nada, porque simplemente le has pasado una copia del entero, mientras que cuando pasas una variable/objeto por referencia, es como si le dijeras a C++ que en la función'modificarInt' use la variable 'var' de la función main, por lo que cuando modificas la variable dentro de la función 'modificarInt', en realidad estás modificando la variable 'var'.

Se podría decir que la variable 'variable' de la función se refiere a la variable 'var' de la función main


En línea

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
paso por referencia de un integer
Java
kasiko 9 14,878 Último mensaje 24 Enero 2011, 06:26 am
por ChavalChavito
[DUDA] paso por valor o por referencia (byval/ byref)
Programación Visual Basic
AlxSpy 8 4,442 Último mensaje 12 Julio 2011, 15:45 pm
por AlxSpy
Paso por referencia
Java
mapers 8 5,104 Último mensaje 27 Julio 2011, 12:27 pm
por [Case]
Paso de parametro por referencia
Programación C/C++
abad023 5 3,089 Último mensaje 6 Diciembre 2011, 08:21 am
por x64core
Tipos de paso por referencia y paso por referencia de tipo apuntador
Programación C/C++
CATBro 3 3,131 Último mensaje 8 Abril 2012, 08:23 am
por Beakman
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines