RE:Funcion con parametros opcionales
Las funciones con argumentos opcionales son una forma anticuada de solucionar la ausencia de sobrecarga de métodos.
la sobrecarga permite tener N métodos del mismo nombre, con diferentes parámetros.
digamos
long of_sumar ( long a, long b) //suma dos numeros
long of_sumar (long a , long b, boolean valorabsoluto ) //retorna el valor absoluto de la suma
long of_sumar ( long a ) // retorna el numero sumado a si mismo
finalmente, uno tiene que UNA sola de estas funciones tiene código:
long of_sumar ( long a, long b , boolean valorabsoluto )
if b <= 0 then //sumar sobre si mismo
if valorabsoluto then //valor absoluto
return abs ( a + a)
else
return a + a
end if
else
if valorabsoluto then
return abs (a + b)
else
return a + b
end if
end if
y posteriormente las funciones llaman a la más completa según lo necesario
long of_sumar ( long a, long b) //suma dos numeros
return of_sumar (a , b , false )
long of_sumar (long a , long b, boolean valorabsoluto ) //retorna el valor absoluto de la suma
return of_sumar ( a , b , valorabsoluto )
long of_sumar ( long a ) // retorna el numero sumado a si mismo
return of_sumar (a , 0 , false )