我使用 time.Time 作为我的结构之一中的指针。例如type struct Example{ CreatedDate *time.Time}我正在使用指针,因此如果不存在日期,我可以将 nil 传递给结构。然而,这现在确实造成了问题,因为我需要使用 time.Since(then) 函数,该函数不接受指针作为参数,而是需要 time.Time。所以...将“&”放在结构体前面很容易,例如。&time.Time,但是如果你有一个指针,你怎么能把它反转,回到例如。一种时间。时间?例如。(不起作用,但可能会让您了解我的意思)var t *time.Time = &time.Now()var t2 time.Time = t.(time.Time)我希望你能帮忙。这个问题感觉很愚蠢,因为我在谷歌搜索时找不到任何关于它的信息。我觉得我只是在这里错过了一些东西;-)
1 回答
慕妹3242003
TA贡献1824条经验 获得超6个赞
var t *time.Time = &time.Now()
var t2 time.Time = *t
就像在 C 中一样,&表示“地址”并分配一个标记为 的指针*T。但*也意味着“值”,或取消引用指针,并分配值。
这有点题外话,但 IMO 这种双重使用*是 C 新手和朋友对指针感到困惑的部分原因。
- 1 回答
- 0 关注
- 382 浏览
添加回答
举报
0/150
提交
取消