Páginas

domingo, 23 de julio de 2017

Gambas3: parametros opcionales con valores por defecto

Gambas3: parámetros opcionales con valores por defecto


A la hora de definir funciones o/y  subrutinas (también nos sirve para los métodos de las clases), gambas3 nos permite poner parámetros opcionales, osea que no tengamos la obligación de ponerlos al llamar la función. Además también podemos poner valores por defecto, en caso de que se llame a la función sin poner los parametros opcionales

Ejemplo de función con parámetros opcionales que incluyen valores por defecto.

Public Function calcula(Optional altura As Integer = 10, Optional base As Integer = 8)

  Print altura * base

End

¿como funciona esta función?Si pasamos dos números a la función, el valor de "altura" y "base" sera el pasado:
Ejemplo:

calcula(5,9)

nos escribira en pantalla  45

Si usamos la función como sigue:

calcula(5)

nos escribirá en pantalla 40

Altura valdrá 5, y base valdrá el valor por defecto, osea 8, entonces 5x8 = 40


Si no pasamos ningún valor:
calcula()
Entonces escribirá en pantall 80
Altura valdrá 10 (el valor por defecto) y Base valdrá 8, entonces 10x8 = 80

Si pasamos solo el 2º parametro:
calcula(,16)
Entonces escribira en pantalla 160

Altura valdrá 10 (el valor por defecto) y Base valdrá 16, entonces 10x16 = 160



Codigo completo:
Public Sub Main()

  calcula(5, 9)

  calcula(5)

  calcula()

  calcula(, 16)

End

Public Function calcula(Optional altura As Integer = 10, Optional base As Integer = 8)

  Print altura * base

End

Resultado por:
45
40
80
160




Ref:
https://www.gambas-es.org/viewtopic.php?t=6530&p=39332#p39332