uiuifree.com

- サイト制作のノウハウと最適化を目指して-

2022.4.22【Rust】Defaultの初期値を変更したい

【Rust】Defaultの初期値を変更したい

Rustの構造体を初期化したいときに一番使うであろうDefaultの設定

#[derive(Default, Debug)]
struct TestA {
    name: String,
}
fn main() {
    print!("{:?}", TestA::default());
}
/// output : TestA { name: "" }

このように設定することで型の初期値で値を定義してくれるので、newメソッドなどを作らずとも簡単に初期化することができます。

ただ、Optionを多用したり数値などの初期値を変更したいことが、実務だと多々ありそれに対応するためにはDefault レイトを自分で実装すれば可能です。

impl Default for TestB {
    fn default() -> TestB {
        TestB {
            name: "初期値".to_string(),
        }
    }
}
fn main() {
    print!("{:?}", TestB::default());
}
/// output : TestB { name: "初期値" }
PROFILE

このサイトを運営してるuiuifreeです。
渋谷のベンチャー企業で2年ほど新規事業を担当した後にフリーランスエンジニアにキャリア転換。
求人サイトの開発が多くエンジニア/看護師/保育士などの分野でサイトを運営しています。

アウトプット中の技術

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)