其他分享
首页 > 其他分享> > Rust中结构体的字段初始化简写

Rust中结构体的字段初始化简写

作者:互联网

字段初始化简写(field init shorthand):在字段名与变量名相同时,不需要使用 字段名: 变量名 的形式,而直接使用 字段名 的形式。

示例程序:

struct User {
    username: String,
    email: String,
    sign_in_count: u64,
    active: bool,
}

fn build_user(username: String, email: String) -> User {
    User {
        username,
        email,
        active: true,
        sign_in_count: 1,
    }
}

fn main() {
    let user1 = build_user(String::from("yuyoubei"), 
            String::from("yuyoubei@qq.com"));

    println!("{}, {}, {}, {}", user1.username, user1.email, user1.active, user1.sign_in_count); // 输出 yuyoubei, yuyoubei@qq.com, true, 1
}

我们希望 build_user 函数的 email 参数来初始化这个实例的 email 字段。由于字段 email 与参数 email 拥有相同的名字,所以我们不用书写完整的 email: email 语句,只保留 email 即可。

标签:username,初始化,String,user1,yuyoubei,sign,简写,email,Rust
来源: https://www.cnblogs.com/yuyoubei/p/15856623.html