FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
¿por que parametros opcionales function procedure no me funcionan?
hola
que tengo una rutina de codigo que quiero que 2 parametros sean opcionales. var FechaInicial:TdateTime; var FechaFinal :TdateTime) : Integer; y al usarla me sale conq eu me faltan esos 2 parametros que yo defini como opcionales
por qu eel codigo de aqui http://www.delphibasics.co.uk/RTL.asp?Name=BlockWrite BlockWrite si es de 3 parametros pero en su declaracion es de 4
asi se supone que se usa.
|
#2
|
||||
|
||||
En ningún momento estás definiendo los parámetros como opcionales. Eso se hace asignando un valor por defecto en el encabezado de la función. El caso de BlockWrite es distinto porque es una función "especial" que el compilador conoce cómo tratar, dependiendo del número de parámetros con que se invoque. En otras palabras, es una "trampa" de Delphi.
Agrego: Se me olvidaba. También puedes lograr el efecto de parámetros opcionales usando sobrecarga de funciones (overload). // Saludos Última edición por roman fecha: 12-04-2012 a las 02:24:35. |
#3
|
||||
|
||||
Tal parece que tenemos oxidados los conocimientos más básicos del lenguaje, JXJ. IMPERDONABLE,
Parámetros por valor:
Modo de uso:
Parámetros por referencia:
Modo de uso:
Parámetros opcionales o por defectos:
Modo de uso:
La posibilidad de sobrecargar como comenta roman si bien puede resultar válida si lo vemos desde la unidad cliente, no es estrictamente hablando un caso de parámetros opcionales. En realidad son funciones sobrecargadas con diferente cantidad de parámetros; que no opcionales o por defecto. Saludos, |
#4
|
||||
|
||||
Como nota final a lo que dice Delphius, me gustaría agregar que los parámetros opcionales siempre deben ser los últimos.
|
#5
|
|||
|
|||
Cita:
gracias.. por su amable atencion. el asunto es qeu no queria usar overload ni nada de eso. por que a mi parecer no me conviene hacerlo asi mejor hacer 2 funciones o procedures claramente distintas en sus parametros. con nombre distintos. ahora si delphi me decepciono.. |
#6
|
||||
|
||||
Cita:
Entonces tu pregunta no hubiera sido en ese sentido, y haber aportado de lleno en tu duda en como poder solventarlo. Delphi no te ha decepcionado, eres tu mismo que no se sabe explicar por lo que no se entiende que es lo que buscas y culpas a Delphi de no poder lograrlo. |
#7
|
||||
|
||||
#8
|
|||
|
|||
función "especial" que el compilador conoce cómo tratar,
|
#9
|
||||
|
||||
Pues bueno, en tal caso, la decepción debes remontarla hasta los orígenes de pascal. Las funciones Read y Write son claro ejemplo de funciones que el compilador trata de forma especial.
// Saludos |
#10
|
|||
|
|||
roman siempre tan equanime . ..
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
como llamo a un procedimiento con parametros opcionales | luigi_cr | OOP | 22 | 14-07-2007 20:59:24 |
Parametros Opcionales no Parametros por defecto | Velia | Varios | 7 | 19-08-2006 15:18:42 |
Parametros Opcionales | c748a | Varios | 5 | 21-09-2005 04:53:25 |
Parametros Opcionales en Procedures/Functions | Enan0 | Varios | 4 | 03-03-2005 10:32:30 |
Parametros opcionales en SELECTs | Gydba | Firebird e Interbase | 4 | 22-04-2004 22:46:38 |
|