我到过很多地方,但找不到一个令人满意的答案:在Go中使用指向嵌套结构的指针有什么好处?
目前,我是Go的新手,我开始阅读《 Go编程语言》一书,并在其中进行了所有练习,以确保我了解语法和用例。到现在。任务之一的目标是创建一个非常简单的GitHub客户端,该客户端检索由给定参数过滤的问题列表。该示例显示了如何使用 json解组。因此,有一些嵌套结构:
type SearchIssueResult {
TotalCount int
Issues []*Issue
}
type Issue {
Title string
Author *User
// ... other properties
}
这又是我的问题:为什么这些嵌套的结构体具有指向结构体的指针类型?我可以只使用结构体类型并且它也可以正常工作(在使用结构体实例时稍作修改),但是我想了解何时使用不同的方法。
谢谢!
答案 0 :(得分:-1)
这取决于您的结构有多复杂。我建议您每次引用结构时都使用指针。这是这种方法的一些优点:
对于某些基本类型,例如int,float,string,通过复制传递它会更快。