一尘不染

在Go中,地图是通过值传递还是通过引用传递?

go

Go中的地图是否通过值或引用传递?

始终可以将函数定义为以下形式,但这是一个过大的杀伤力吗?

func foo(dat *map[string]interface{}) {...}

相同的返回值问题。我应该返回指向地图的指针,还是将地图作为值返回?

这样做的目的当然是避免不必要的数据复制。


阅读 188

收藏
2020-07-02

共1个答案

一尘不染

在此线程中,您将找到答案:

Golang:使用地图参考来访问地图

您不需要在地图上使用指针。

映射类型是引用类型,例如指针或切片[1]

如果需要更改会话,可以使用一个指针:

map[string]*Session

https://blog.golang.org/go-maps-in-action

2020-07-02