当我动态创建一个指向类型的指针,然后将其传递给解组函数时,理论上它似乎是正确编写的:
x := reflect.New(structType) decode(x)
但是,当您打印 时x
,它看起来像是该类型的零值。该类型绝对是正确且符合预期的。
另一方面,当我创建类型并直接传递指向它的指针时,它工作得很好:
directoryEntry := DirectoryEntry{} decode(&directoryEntry)
内容已正确设置decode()
,并且打印时是正确的。
那么,看来我必须将类型的值传递给decode()
而不是引用?
有人能指出我必须缺少什么吗?一些谷歌查询没有帮助,看来我一定错过了一些小东西。
qq_笑_17
相关分类