我有一个结构体,其中一个字段被声明为字符串,但它用于存储时间。因此,我将其更改为*time.Time(请参阅提交),注意使用指针绕过问题,",omitempty"即在空白日期的情况下不会真正省略该值。到现在为止还挺好。问题是现在我正在尝试编写一个代码来测试 JSON 字符串的正确反序列化,但我无法将结果与want := Record{Id: 1539, UpdatedAt: time.Date(2014, 01, 15, 22, 03, 04, 0, time.UTC)}因为UpdatedAt预期是一个指针*time.Time,而time.Date返回一个time.Time。我不能用want := Record{Id: 1539, UpdatedAt: &time.Date(2014, 01, 15, 22, 03, 04, 0, time.UTC)}因为它确实被拒绝了(它需要一个指针,我尝试分配一个结构)cannot take the address of time.Date(2014, 1, 15, 22, 3, 3, 0, time.UTC)这是我的问题。有没有一种方法来创建一个Record与time.Date上飞(因此不分配time.Date给一个变量,然后得到的指针)和/或对问题的解决方法,保证我能当对象被序列分配适当的零值/反序列化并且日期为空?
2 回答
慕勒3428872
TA贡献1848条经验 获得超6个赞
你不能获取函数返回值的地址,因为你只能获取可以赋值的地址。
可以这样想:如果将结果存储在变量中,则可以获取该变量的地址,但如果不这样做,则无法从中获取地址。
- 2 回答
- 0 关注
- 156 浏览
添加回答
举报
0/150
提交
取消