La Declaración Use

RustRustBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, exploraremos la declaración use en Rust, que nos permite enlazar una ruta completa a un nuevo nombre para un acceso más fácil, y se puede utilizar con la palabra clave as para enlazar importaciones a un nombre diferente. Fragmentos de código de ejemplo demuestran cómo utilizar la declaración use para simplificar el acceso a funciones y módulos dentro de rutas anidadas.

Nota: Si el laboratorio no especifica un nombre de archivo, puede utilizar cualquier nombre de archivo que desee. Por ejemplo, puede utilizar main.rs, compilar y ejecutarlo con rustc main.rs &&./main.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL rust(("Rust")) -.-> rust/DataTypesGroup(["Data Types"]) rust(("Rust")) -.-> rust/FunctionsandClosuresGroup(["Functions and Closures"]) rust(("Rust")) -.-> rust/DataStructuresandEnumsGroup(["Data Structures and Enums"]) rust/DataTypesGroup -.-> rust/string_type("String Type") rust/DataTypesGroup -.-> rust/type_casting("Type Conversion and Casting") rust/FunctionsandClosuresGroup -.-> rust/function_syntax("Function Syntax") rust/FunctionsandClosuresGroup -.-> rust/expressions_statements("Expressions and Statements") rust/DataStructuresandEnumsGroup -.-> rust/method_syntax("Method Syntax") subgraph Lab Skills rust/string_type -.-> lab-99334{{"La Declaración Use"}} rust/type_casting -.-> lab-99334{{"La Declaración Use"}} rust/function_syntax -.-> lab-99334{{"La Declaración Use"}} rust/expressions_statements -.-> lab-99334{{"La Declaración Use"}} rust/method_syntax -.-> lab-99334{{"La Declaración Use"}} end

La declaración use

La declaración use se puede utilizar para enlazar una ruta completa a un nuevo nombre, para un acceso más fácil. A menudo se utiliza de la siguiente manera:

use crate::deeply::nested::{
    my_first_function,
    my_second_function,
    AndATraitType
};

fn main() {
    my_first_function();
}

Puede utilizar la palabra clave as para enlazar importaciones a un nombre diferente:

// Enlace la ruta `deeply::nested::function` a `other_function`.
use deeply::nested::function as other_function;

fn function() {
    println!("llamado `function()`");
}

mod deeply {
    pub mod nested {
        pub fn function() {
            println!("llamado `deeply::nested::function()`");
        }
    }
}

fn main() {
    // Acceso más fácil a `deeply::nested::function`
    other_function();

    println!("Entrando al bloque");
    {
        // Esto es equivalente a `use deeply::nested::function as function`.
        // Esta `function()` sombreará la externa.
        use crate::deeply::nested::function;

        // Los enlaces `use` tienen un ámbito local. En este caso, la
        // sombreado de `function()` solo es en este bloque.
        function();

        println!("Saliendo del bloque");
    }

    function();
}

Resumen

¡Felicidades! Has completado el laboratorio La Declaración Use. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.