使用多值函数初始化struct字段会导致Go

时间:2016-01-18 16:06:30

标签: parsing time struct go

我的Go语言struct包含time.Time字段,如下所示:

type Location struct {
    // ...
    Timestamp time.Time
    // ...
}

我想用time.Parse调用的结果初始化它,但是当我执行以下操作时

x := Location{
    // ...
    Timestamp: time.Parse("2 Jan 2006", "16 Jul 2013")
    // ...
}

编译器抱怨

multiple-value time.Parse() in single-value context

我通过写一个小函数来解决它:

func mustTime(form, str string) time.Time {
    time, err := time.Parse(form, str)
    if err != nil {
        panic(err)
    }
    return time
}

然后像这样初始化结构字段:

x := Location{
    // ...
    Timestamp: mustTime("2 Jan 2006", "16 Jul 2013")
    // ...
}

是否有更惯用的方式来做到这一点?

0 个答案:

没有答案