Los parámetros opcionales son los parámetros que son opcionales en la función. Podemos poner parámetros opcionales siempre que los argumentos no sean necesarios. Si mantenemos los parámetros opcionales en una función y pasamos los valores, entonces los valores se toman en lugar de los parámetros opcionales. Si no se pasan los valores, los parámetros opcionales tomarán NIL y devolverán NIL. Si queremos poner parámetros opcionales como argumentos, entonces ponga &opcional antes de los nombres de los parámetros opcionales.
Sintaxis de la función:
(defun function_name (parameter1,parameter2,.......,parameter n.... &optional ) other statements)) (call function value1,value2,.,value n, optional values)
Ejemplo: programa LISP para mostrar todos sus parámetros pasados.
Lisp
;create a function named display ;pass the 2 parameters and optional as three parameters (defun display (val1 val2 &optional op1 op2 op3) (write (list val1 val2 op1 op2 op3))) ;pass the all values (display 10 20 30 40 50) (terpri) ;pass only two values (display 10 20 ) (terpri) ;pass only three values (display 10 20 30) (terpri) ;pass only four values (display 10 20 30 40) (terpri)
Producción:
(10 20 30 40 50) (10 20 NIL NIL NIL) (10 20 30 NIL NIL) (10 20 30 40 NIL)
Ejemplo 2: Programa LISP para obtener la suma de números
Lisp
;create a function named sum ;pass the 2 parameters and optional as three parameters (defun sum (val1 val2 &optional op1 op2 op3) (write ( + val1 val2 op1 op2 op3))) ;pass the all values to get sum (sum 10 20 30 40 50) (terpri)
Producción:
150
Publicación traducida automáticamente
Artículo escrito por deepakresearch222 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA