Successfully reported this slideshow.

Clase21

0

Share

Upcoming SlideShare
Clase10
Clase10
Loading in …3
×
1 of 7
1 of 7

Clase21

0

Share

Download to read offline

Paso de parámetros. Por valor y por referencia. Diferencias por lenguaje

Paso de parámetros. Por valor y por referencia. Diferencias por lenguaje

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

Related Audiobooks

Free with a 14 day trial from Scribd

See all

Clase21

  1. 1. Paso de Parámetros Leonel Morales Díaz Ingeniería Simple [email_address] Disponible en: http://www.ingenieriasimple.com/introprogra Copyright 2008 by Leonel Morales Díaz – Ingeniería Simple. Derechos reservados
  2. 2. Examine este Código <ul><li>Dim UnaVar </li></ul><ul><li>UnaVar = 10 </li></ul><ul><li>Function QueValor(UnValor) </li></ul><ul><li>QueValor = UnValor * 10 </li></ul><ul><li>UnValor = UnValor + 5 </li></ul><ul><li>End Function </li></ul><ul><li>Document.Write &quot;Valor Original: &quot; & UnaVar & &quot;<BR>&quot; </li></ul><ul><li>Document.Write QueValor(UnaVar) & &quot;<BR>&quot; </li></ul><ul><li>Document.Write &quot;Valor Final: &quot; & UnaVar & &quot;<BR>&quot; </li></ul>ej083.html
  3. 3. Código Modificado <ul><li>Dim UnaVar </li></ul><ul><li>UnaVar = 10 </li></ul><ul><li>Function QueValor( ByVal UnValor) </li></ul><ul><li>QueValor = UnValor * 10 </li></ul><ul><li>UnValor = UnValor + 5 </li></ul><ul><li>End Function </li></ul><ul><li>Document.Write &quot;Valor Original: &quot; & UnaVar & &quot;<BR>&quot; </li></ul><ul><li>Document.Write QueValor(UnaVar) & &quot;<BR>&quot; </li></ul><ul><li>Document.Write &quot;Valor Final: &quot; & UnaVar & &quot;<BR>&quot; </li></ul>ej084.html
  4. 4. Más Código Modificado <ul><li>Dim UnaVar </li></ul><ul><li>UnaVar = 10 </li></ul><ul><li>Function QueValor( ByRef UnValor) </li></ul><ul><li>QueValor = UnValor * 10 </li></ul><ul><li>UnValor = UnValor + 5 </li></ul><ul><li>End Function </li></ul><ul><li>Document.Write &quot;Valor Original: &quot; & UnaVar & &quot;<BR>&quot; </li></ul><ul><li>Document.Write QueValor(UnaVar) & &quot;<BR>&quot; </li></ul><ul><li>Document.Write &quot;Valor Final: &quot; & UnaVar & &quot;<BR>&quot; </li></ul>ej085.html
  5. 5. Paso Por Valor <ul><li>ByVal en el código </li></ul><ul><li>Saca una copia de la variable </li></ul><ul><li>Usa esa copia en la sub o function </li></ul><ul><li>No modifica el valor original </li></ul>
  6. 6. Paso Por Referencia <ul><li>Trabaja con el mismo espacio de memoria </li></ul><ul><ul><li>La “referencia” de memoria </li></ul></ul><ul><li>En el sub o function puede tener otro nombre </li></ul><ul><li>Se modifica el valor de la variable original </li></ul>
  7. 7. Diferencias Entre Lenguajes <ul><li>Algunos lenguajes usan solo un tipo </li></ul><ul><li>Ej: Java </li></ul><ul><ul><li>Todo se pasa por referencia </li></ul></ul><ul><ul><ul><li>Casi todo es un objeto </li></ul></ul></ul><ul><ul><li>Menos los tipos “primitivos” </li></ul></ul><ul><ul><ul><li>byte, integer, long, boolean, char </li></ul></ul></ul><ul><ul><li>Para pasar un byte por referencia </li></ul></ul><ul><ul><ul><li>Se convierte a objeto </li></ul></ul></ul>

×