guizans 21-05-2025, 14:38
Hola a todos.

 Vamos a pensar en que tenemos una función que puede recibir tres, dos o un parámetro, y estos son de tipo Float. La función va a realizar una tarea u otra en función de los parámetros recibidos. Y aquí viene la duda. En otros lenguajes, cuando hay parámetros opcionales, los que no reciben valor tienen asignado Null o None. Pero esto no pasa en Gambas. Me quedaría como opción, asignarle el valor de cero, y si este cambia es que ha recibido un parámetro.
Código:
Private Function paseParametros(Optional a As Float = 0, Optional b As Float = 0, Optional c As Float = 0) As Float
 
  'Codigo aqui
 
End

 Hasta aquí funciona. ¿Pero y si uno de los tres parámetros que paso tiene que ser 0 y necesito que ejecute el código? En este caso, esto no me serviria, ya que no es lo mismo cero que Null, ya que el primero es un número y el segundo es valor vacio.

Le he estado dando vueltas y no se me ocurre ningula solución. ¿es una limitación de Gambas? Apuesto a que si.

Un saludo.

¿Por qué la solución te viene a la cabeza después de un rato de haber formulado la pregunta en el foro? Misterios de la vida.

La solución es en vez de usar Float usar Variant, ya que este si admite Null. No es una solución que me guste, ya que al especificar el tipo de parámetro se sabe de antemano el dato a pasar, pero con Variant puede ser cualquier cosa y hasta que se mira el código de la función no se sabe. Algo parecido le ocurre a Python y no pasa nada.

Un saludo.
Shordi 18-05-2025, 19:59
Pues eso de los productores de "¿y ahora qué coño hago con la María? viene, "Esto no es el coño de la Bernarda: Un poco de orden caballeros"

Shordi 17-05-2025, 19:04
Como continuación del éxito de taquilla "El desarrollo de habilidades necesarias para todo informático", de los productores de "Todo lo que no necesitas saber pero te mueres por hacer", os traigo "Montando la pila Lamp" conocida en otros países como "El Abuelo a electrocutado a la oveja".

Páginas (572):    1 16 17 18 19 20 572   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 311
Último miembro: Rober
Temas del foro: 1,765
Mensajes del foro: 9,166
Últimos temas
Presentación de gbpublish...
Foro: General
Último mensaje por: guizans, 02-06-2026, 21:34
Respuestas: 5 - Vistas: 521
Gambas 3.21.1
Foro: Mundo Linux
Último mensaje por: jguardon, 20-05-2026, 22:29
Respuestas: 1 - Vistas: 322
Problema con instalación ...
Foro: WebApp/WebForms
Último mensaje por: guizans, 19-05-2026, 18:54
Respuestas: 1 - Vistas: 359
Problema con el repósito ...
Foro: Instalación
Último mensaje por: guizans, 14-04-2026, 21:38
Respuestas: 2 - Vistas: 646
UEFI y BIOS
Foro: Hardware & IoT
Último mensaje por: guizans, 13-04-2026, 21:22
Respuestas: 3 - Vistas: 2,804
Powered By MyBB, © 2002-2026 MyBB Group.
Made with by Curves UI.