Die use-Anweisung

Beginner

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

Einführung

In diesem Lab werden wir die use-Anweisung in Rust untersuchen, die uns ermöglicht, einen vollständigen Pfad an einen neuen Namen zu binden, um den Zugang zu erleichtern, und mit dem as-Schlüsselwort verwendet werden kann, um Imports an einen anderen Namen zu binden. Beispielcodeausschnitte zeigen, wie die use-Anweisung verwendet wird, um den Zugang zu Funktionen und Modulen innerhalb geschachtelter Pfade zu vereinfachen.

Hinweis: Wenn das Lab keinen Dateinamen angibt, können Sie einen beliebigen Dateinamen verwenden. Beispielsweise können Sie main.rs verwenden und es mit rustc main.rs &&./main kompilieren und ausführen.

Die use-Anweisung

Die use-Anweisung kann verwendet werden, um einen vollständigen Pfad an einen neuen Namen zu binden, um den Zugang zu erleichtern. Sie wird oft so verwendet:

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

fn main() {
    my_first_function();
}

Sie können das as-Schlüsselwort verwenden, um Imports an einen anderen Namen zu binden:

// Binde den Pfad `deeply::nested::function` an `other_function`.
use deeply::nested::function as other_function;

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

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

fn main() {
    // Einfacherer Zugang zu `deeply::nested::function`
    other_function();

    println!("Entering block");
    {
        // Dies ist äquivalent zu `use deeply::nested::function as function`.
        // Diese `function()` wird die äußere überschreiben.
        use crate::deeply::nested::function;

        // `use`-Bindungen haben einen lokalen Gültigkeitsbereich. In diesem Fall
        // ist das Überschreiben von `function()` nur in diesem Block.
        function();

        println!("Leaving block");
    }

    function();
}

Zusammenfassung

Herzlichen Glückwunsch! Sie haben das Lab The Use Declaration abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.