Rust における複数の境界の探索

RustRustBeginner
オンラインで実践に進む

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

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

はじめに

この実験では、Rust における複数の境界の概念をコードで示しています。ここでは、単一の型に対して+演算子を使って複数の境界を適用できます。

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

複数の境界

単一の型に対する複数の境界は、+を使って適用できます。通常通り、異なる型は,で区切ります。

use std::fmt::{Debug, Display};

fn compare_prints<T: Debug + Display>(t: &T) {
    println!("Debug: `{:?}`", t);
    println!("Display: `{}`", t);
}

fn compare_types<T: Debug, U: Debug>(t: &T, u: &U) {
    println!("t: `{:?}`", t);
    println!("u: `{:?}`", u);
}

fn main() {
    let string = "words";
    let array = [1, 2, 3];
    let vec = vec![1, 2, 3];

    compare_prints(&string);
    //compare_prints(&array);
    // TODO ^ Try uncommenting this.

    compare_types(&array, &vec);
}

まとめ

おめでとうございます!あなたは「複数の境界」の実験を完了しました。あなたの技術を向上させるために、LabEx でさらに多くの実験を行って練習してください。