Diferencia entre revisiones de «Argumento (informática)»

m
Bot: reemplazando etiqueta source desaconsejada
m (Revertidos los cambios de 152.231.192.125 (disc.) a la última edición de Eduardosalg)
Etiqueta: Reversión
m (Bot: reemplazando etiqueta source desaconsejada)
 
Este tipo puede ser simulado en cualquier lenguaje que permita el paso de valores por referencia de la siguiente forma:
<sourcesyntaxhighlight lang="cpp">void EjemploValorRes(int& a1, int& a2, int& a3) {
int aux1 = a1, aux2 = a2, aux3 = a3;
// código trabajando con aux1, aux2 y aux3
a1 = aux1; a2 = aux2; a3 = aux3; // Dependiendo del compilador la copia se realiza en un sentido o en el otro
}</sourcesyntaxhighlight>
 
Tal y como indica el ejemplo de simulación de valor-resultado, el orden de copia depende del compilador, lo que implica que la misma función pueda dar resultados diferentes según el compilador usado.
==Ejemplo de diferencias entre los distintos pasos de parámetros==
Aquí se exponen unos ejemplos que demuestran las diferencias de estos tipos:
<sourcesyntaxhighlight lang="cpp">void función(int a, int b) {
++a;
b += 2;
función(a, a);
 
</syntaxhighlight>
</source>
*Argumentos pasados por valor: a = 0
*Argumentos pasados por referencia: a = 3
379 809

ediciones