Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

use

La declaración use se puede usar de tal manera que no se necesiten alcances manuales:

// Un atributo para esconder las advertencias del código no utilizado.
#![allow(dead_code)]

enum Stage {
    Beginner,
    Advanced,
}

enum Role {
    Student,
    Teacher,
}

fn main() {
    // Explícitamente `use` (usa) cada nombre para que estén disponibles sin 
     // alcance manual. 
    use Stage::{Beginner, Advanced};
    // Hace `use` automaticamente para cada nombre dentro de `Role`.
    use Role::*;

    // Equivalente a `Stage::Beginner`.
    let stage = Beginner;
    // Equivalente a `Role::Student`.
    let role = Student;

    match stage {
        // Notamos que la falta de alcances se debe al uso explícito de `use` arriba.
        Beginner => println!("¡Los principiantes están comenzando su aprendizaje!"),
        Advanced => println!("Los estudiantes avanzados están dominando sus materias..."),
    }

    match role {
        // Notamos otra vez la falta de alcances.
        Student => println!("¡Los estudiantes están adquiriendo conocimiento!"),
        Teacher => println!("Teachers are spreading knowledge!"),
    }
}

Ver también

match and use