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 (575):    1 … 19 20 21 22 23 … 575   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 319
Último miembro: Úrsula
Temas del foro: 1,775
Mensajes del foro: 9,215
Últimos temas
Compile all in two pass
Foro: General
Último mensaje por: guizans, Ayer, 16:31
Respuestas: 0 - Vistas: 16
Duda con Report [SOLUCION...
Foro: General
Último mensaje por: guizans, 24-10-2026, 14:50
Respuestas: 1 - Vistas: 1,630
Problemas con la versión ...
Foro: General
Último mensaje por: alberto-moyano, 12-10-2026, 03:08
Respuestas: 4 - Vistas: 1,049
Me hace falta el dato de ...
Foro: Sobre gambas-es.org
Último mensaje por: jguardon, 30-09-2026, 20:25
Respuestas: 1 - Vistas: 530
El conector de alimentaci...
Foro: Hardware & IoT
Último mensaje por: tincho, 23-09-2026, 23:03
Respuestas: 3 - Vistas: 675
Powered By MyBB, © 2002-2026 MyBB Group.
Made with by Curves UI.