前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Rust: Struct的Update语法

Rust: Struct的Update语法

作者头像
灯珑LoGin
发布2023-10-18 10:41:01
1400
发布2023-10-18 10:41:01
举报
文章被收录于专栏:龙进的专栏

首先,我们假设具有这样的一个结构体:

代码语言:javascript
复制
#[derive(Debug)]
struct Order {
    name: String,
    year: u32,
    made_by_phone: bool,
    made_by_mobile: bool,
    made_by_email: bool,
    item_number: u32,
    count: u32,
}

然后,我们先是声明了第一个实例,叫做ord_1.并且为这个ord_1设置了一些值。

面对这样一个场景:我们要创建一个新的实例ord_2,并且希望ord_2除了name以外,其他的部分都和ord_1相同。如果我们直接每个字段去赋值,来新建一个结构体的话,属实有点麻烦。而且如果结构体中的成员变量数目发生了改变,也会很麻烦,到处都要改。

这个时候我们可以使用结构体的Update语法来实现:

代码语言:javascript
复制
let ord_2 = Order{
            name: String::from("Hacker in Rust"),
            ..ord_1
        };

这样就能完成上面的这个任务。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年11月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档