相关疑难解决方法(0)

对于具有未实现默认值的字段的结构,是否有一种简短的方法来实现默认值?

我有一个包含 20 个字段的结构:

struct StructA {
    value1: i32,
    value2: i32,
    // ...
    value19: i32,
    day: chrono::NaiveDate,
}
Run Code Online (Sandbox Code Playgroud)

I'd like to impl Default trait for StructA. I tried to add #[derive(Default)] to the struct, but chrono::NaiveDate doesn't implement Default.

I then tried to implement Default for StructA:

impl Default for StructA {
    fn default() -> Self {
        Self {
            value1: Default::default(),
            value2: Default::default(),
            // ...
            value19: Default::default(),
            day: chrono::NaiveDate::from_ymd(2021, 1, 1),
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

This code works fine, …

rust

9
推荐指数
1
解决办法
231
查看次数

标签 统计

rust ×1