rust默认赋值的方法

可以用如下方法实现默认赋值

方法1,使用 Default::default()给变量赋值:

fn main(){

let i: i8 = Default::default();
let (x, y): (Option<String>, f64) = Default::default();
let (a, b, (c, d)): (i32, u32, (bool, bool)) = Default::default();

println!("{}",i);
println!("{:?},{:?}",x,y);
println!("{},{},{},{}",a,b,c,d);
}

输出结果:

0
None,0
0,0,false,false

方法2,添加#[derive(Default)]

#[derive(Default,Debug)]    //(Debug是为了方便打印)
struct MyTest{
    i:i32,
    j:Option<i32>,
    k:String,
}

fn main(){
    let mt = MyTest::default();    
    println!("{:?}",mt);
}

输出:

MyTest { i: 0, j: None, k: "" }

引用:https://doc.rust-lang.org/std/default/trait.Default.html

你可能感兴趣的:(默认值,Rust)