Difference between revisions of "Funciones"

From El Mago del Rust
Jump to navigation Jump to search
Line 31: Line 31:
Se puede agregar más funciones, agregando identificadores de variables y tipos, separados por comas.
Se puede agregar más funciones, agregando identificadores de variables y tipos, separados por comas.


=Cuerpo de las funciones=
=Retorno de valores=
Las funciones puede devolver valores, declarando el tipo y usando una flecha <code>-></code>. El valor que se devolverá es la última expressión en el cuerpo de la función. Se puede usar <code>return</code> si se desea devolver antes del final.


=Retorno de valores=
<syntaxhighlight lang="rust" line='line' highlight="1">
fn cinco() -> i32 {
    5
}
fn main() {
    let a = cinco();
    println!("El valor de a es: {}", a);
}
</syntaxhighlight>
 
Si se desea pasar parámetros además de recibir algo devuelta de la función, se le agregarían las variables entre los paréntesis como es usual, antes de la flecha.

Revision as of 23:01, 7 February 2021

main

Main es la función principal de un programa de Rust: es su punto de inicio o entrada.

Rust utiliza la convención snake case para nombrar identificadores de funciones y variables.

Las definiciones de Rust empiezan con fn y tienen un conjunto de paréntesis y llaves para indicar el inicio y final del cuerpo de la función.

A diferencia de otros lenguajes, Rust solo necesita que una función esté definida en algún lugar del código fuente, no necesita estar antes o después del lugar donde se le invoca.

fn una_funcion(){
    println!("Otro hola!");
}

Parámetros

Los parámetros o argumentos son las variables especiales que son parte de la función.

Una función, al invocar a otra, puede pasarle valores como en este ejemplo:

fn main(){
    una_funcion(10);
}

fn una_funcion(a: i32){
    println!("El valor obtenido es {}",a);
}

Se puede agregar más funciones, agregando identificadores de variables y tipos, separados por comas.

Retorno de valores

Las funciones puede devolver valores, declarando el tipo y usando una flecha ->. El valor que se devolverá es la última expressión en el cuerpo de la función. Se puede usar return si se desea devolver antes del final.

fn cinco() -> i32 {
     5
}
 
fn main() {
    let a = cinco();
    println!("El valor de a es: {}", a);
}

Si se desea pasar parámetros además de recibir algo devuelta de la función, se le agregarían las variables entre los paréntesis como es usual, antes de la flecha.