Rust のエイリアシング:コードの読みやすさを向上させる

RustRustBeginner
今すぐ練習

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

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

はじめに

この実験では、Rust におけるエイリアシングについて学びます。エイリアシングを使うと、type ステートメントを使って既存の型に新しい名前を付けることができます。エイリアスは特定の命名規則に従わなければならず、基本型やユーザー定義型に新しい名前を作成するために使用できます。エイリアスの主な目的は、コードの重複を減らし、読みやすさを向上させることです。

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL rust(("Rust")) -.-> rust/FunctionsandClosuresGroup(["Functions and Closures"]) rust(("Rust")) -.-> rust/MemorySafetyandManagementGroup(["Memory Safety and Management"]) rust(("Rust")) -.-> rust/BasicConceptsGroup(["Basic Concepts"]) rust(("Rust")) -.-> rust/DataTypesGroup(["Data Types"]) rust/BasicConceptsGroup -.-> rust/variable_declarations("Variable Declarations") rust/DataTypesGroup -.-> rust/integer_types("Integer Types") 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/MemorySafetyandManagementGroup -.-> rust/lifetime_specifiers("Lifetime Specifiers") subgraph Lab Skills rust/variable_declarations -.-> lab-99298{{"Rust のエイリアシング:コードの読みやすさを向上させる"}} rust/integer_types -.-> lab-99298{{"Rust のエイリアシング:コードの読みやすさを向上させる"}} rust/type_casting -.-> lab-99298{{"Rust のエイリアシング:コードの読みやすさを向上させる"}} rust/function_syntax -.-> lab-99298{{"Rust のエイリアシング:コードの読みやすさを向上させる"}} rust/expressions_statements -.-> lab-99298{{"Rust のエイリアシング:コードの読みやすさを向上させる"}} rust/lifetime_specifiers -.-> lab-99298{{"Rust のエイリアシング:コードの読みやすさを向上させる"}} end

エイリアシング

type ステートメントを使って、既存の型に新しい名前を付けることができます。型は UpperCamelCase の名前を持たなければならず、そうでない場合、コンパイラは警告を発します。このルールの例外は基本型です。usizef32 などです。

// `NanoSecond`、`Inch`、および `U64` は `u64` の新しい名前です。
type NanoSecond = u64;
type Inch = u64;
type U64 = u64;

fn main() {
    // `NanoSecond` = `Inch` = `U64` = `u64`。
    let nanoseconds: NanoSecond = 5 as U64;
    let inches: Inch = 2 as U64;

    // 型エイリアスは追加の型安全性を提供しないことに注意してください。なぜなら、
    // エイリアスは新しい型ではないからです。
    println!("{} nanoseconds + {} inches = {} unit?",
             nanoseconds,
             inches,
             nanoseconds + inches);
}

エイリアスの主な用途は、定型句を減らすことです。たとえば、io::Result<T> 型は Result<T, io::Error> 型のエイリアスです。

まとめ

おめでとうございます!あなたはエイリアシングの実験を完了しました。あなたのスキルを向上させるために、LabExでさらに多くの実験を行って練習してください。