Rust Variable Bindings und Typinferenz

RustRustBeginner
Jetzt üben

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

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen wir über Variable Bindings in Rust, bei denen Werte an Variablen über die let-Bindung zugewiesen werden können, und darüber, wie Typangaben verwendet werden können, aber oft vom Compiler inferiert werden.

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.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL rust(("Rust")) -.-> rust/BasicConceptsGroup(["Basic Concepts"]) rust(("Rust")) -.-> rust/DataTypesGroup(["Data Types"]) rust(("Rust")) -.-> rust/FunctionsandClosuresGroup(["Functions and Closures"]) rust/BasicConceptsGroup -.-> rust/variable_declarations("Variable Declarations") rust/DataTypesGroup -.-> rust/boolean_type("Boolean Type") rust/FunctionsandClosuresGroup -.-> rust/function_syntax("Function Syntax") rust/FunctionsandClosuresGroup -.-> rust/expressions_statements("Expressions and Statements") subgraph Lab Skills rust/variable_declarations -.-> lab-99285{{"Rust Variable Bindings und Typinferenz"}} rust/boolean_type -.-> lab-99285{{"Rust Variable Bindings und Typinferenz"}} rust/function_syntax -.-> lab-99285{{"Rust Variable Bindings und Typinferenz"}} rust/expressions_statements -.-> lab-99285{{"Rust Variable Bindings und Typinferenz"}} end

Variable Bindings

Rust bietet Typsicherheit durch statische Typisierung. Variable Bindings können bei der Deklaration mit einem Typ annotiert werden. In den meisten Fällen jedoch kann der Compiler den Typ der Variable aus dem Kontext ableiten, was die Annotationsbelastung erheblich reduziert.

Werte (wie Literale) können an Variablen gebunden werden, indem die let-Bindung verwendet wird.

fn main() {
    let an_integer = 1u32;
    let a_boolean = true;
    let unit = ();

    // Kopiere `an_integer` in `copied_integer`
    let copied_integer = an_integer;

    println!("An integer: {:?}", copied_integer);
    println!("A boolean: {:?}", a_boolean);
    println!("Meet the unit value: {:?}", unit);

    // Der Compiler weist vor, wenn Variable Bindings nicht verwendet werden; diese Warnungen können
    // durch Einfügen eines Unterstrichs am Anfang des Variablennamens unterdrückt werden
    let _unused_variable = 3u32;

    let noisy_unused_variable = 2u32;
    // FIXME ^ Füge einen Unterstrich hinzu, um die Warnung zu unterdrücken
    // Beachten Sie, dass Warnungen möglicherweise nicht im Browser angezeigt werden
}

Zusammenfassung

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