Rust の `use` 宣言による名前空間設定

RustRustBeginner
今すぐ練習

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

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Rust で手動でのスコープ設定を不要にするために use 宣言を使用し、名前空間を明示的に指定することなく名前を利用できるようにします。

注: 実験でファイル名が指定されていない場合、好きなファイル名を使用できます。たとえば、main.rs を使用して、rustc main.rs &&./main でコンパイルして実行できます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL rust(("Rust")) -.-> rust/FunctionsandClosuresGroup(["Functions and Closures"]) rust(("Rust")) -.-> rust/BasicConceptsGroup(["Basic Concepts"]) rust/BasicConceptsGroup -.-> rust/variable_declarations("Variable Declarations") rust/FunctionsandClosuresGroup -.-> rust/function_syntax("Function Syntax") rust/FunctionsandClosuresGroup -.-> rust/expressions_statements("Expressions and Statements") subgraph Lab Skills rust/variable_declarations -.-> lab-99245{{"Rust の `use` 宣言による名前空間設定"}} rust/function_syntax -.-> lab-99245{{"Rust の `use` 宣言による名前空間設定"}} rust/expressions_statements -.-> lab-99245{{"Rust の `use` 宣言による名前空間設定"}} end

use

use 宣言を使用することで、手動でのスコープ設定が不要になります。

// 未使用のコードに対する警告を非表示にする属性。
#![allow(dead_code)]

enum Status {
    Rich,
    Poor,
}

enum Work {
    Civilian,
    Soldier,
}

fn main() {
    // 各名前を明示的に `use` することで、手動でのスコープ設定なしで利用できるようになります。
    use crate::Status::{Poor, Rich};
    // `Work` 内の各名前を自動的に `use` します。
    use crate::Work::*;

    // `Status::Poor` に相当します。
    let status = Poor;
    // `Work::Civilian` に相当します。
    let work = Civilian;

    match status {
        // 上の明示的な `use` により、スコープ設定が不要であることに注意してください。
        Rich => println!("The rich have lots of money!"),
        Poor => println!("The poor have no money..."),
    }

    match work {
        // 再びスコープ設定が不要であることに注意してください。
        Civilian => println!("Civilians work!"),
        Soldier  => println!("Soldiers fight!"),
    }
}

まとめ

おめでとうございます!Use 実験を完了しました。技術力を向上させるために、LabEx でさらに多くの実験を行って練習してください。