Golang 中的指针和映射
在 Go 中,映射是引用类型,这意味着它们存储实际数据的引用而不是值本身。这可以实现高效的内存管理,因为多个对象可以指向相同的底层数据。
但是,尝试在 Go 中使用 & 运算符获取指向映射的指针可能会导致错误。这是因为 Go 中的映射已经通过引用传递。当您执行赋值时,例如 valueTo := &valueToSomeType,您并不是在创建指针,而是将映射的引用值赋给新变量。这实际上指向与原始映射相同的基础数据。
因此,表达式 valueTo[number] 不适用于指向映射的指针。相反,您应该直接使用 .运算符,如 valueTo[number].
综上所述,Go 中的映射已经是引用类型,因此不需要使用指针来实现引用语义。访问地图元素可以直接使用 .运算符,因为地图始终通过引用传递。
以上是为什么我无法在 Go 中获取指向地图的指针?的详细内容。更多信息请关注PHP中文网其他相关文章!