Curso de Raku / Esenciales / Crear y llamar funciones

Valores predeterminados

Tanto los parámetros posicionales como los nombrados pueden tener valores predeterminados. Si la función tiene un valor predeterminado para el parámetro dado, ese parámetro puede omitirse al llamar a la función.

Parámetros posicionales

Un ejemplo de un valor predeterminado para una función con parámetros posicionales:

sub greet($name = 'World') {
    say "Hello, $name!";
}

greet('Merinda');
greet();

La primera llamada usa el nombre pasado como el único argumento y, por lo tanto, imprime Hello, Merinda!. La segunda llamada usa el valor predeterminado e imprime Hello, World!.

Si una función tiene más de un parámetro, entonces los valores predeterminados solo se pueden usar al final de la lista de ellos:

sub f($a, $b, $c = 42, $d = 50) { . . . } # correcto
# sub f($a = 10, $b = 20, $c, $d) { . . . } # INCORRECTO

Parámetros nombrados

Se usa la misma sintaxis para establecer valores predeterminados para parámetros nombrados:

sub greet(:$name = 'World') {
    say "Hello, $name!";
}

greet(name => 'Merinda'); # Hello, Merinda!
greet(); # Hello, World!

El orden de los parámetros nombrados no importa, por lo que cualquiera de ellos puede tener valores predeterminados, incluso el primero en la lista:

sub greet(:$greeting = 'Hello', :$name) {
    say "$greeting, $name!";
}

greet(name => 'Alla'); # Hello, Alla!

Práctica

Completa los cuestionarios que cubren el contenido de este tema.

Crear y llamar funciones / Parámetros nombrados   |   💪 Ejercicios: Crear y llamar funciones

Esta página está traducida automáticamente con ChatGPT 4o. Texto original en inglés.

Traducciones de esta página: EnglishDeutschEspañolItalianoLatviešuNederlandsБългарскиРусскийУкраїнська