Go 如何将指针值从映射传递到函数参数
所以我的用例是: 1.生成指向结构车的指针映射 2.变异图 3.迭代映射并传递给函数 但我不知道如何将指针的值从映射传递到函数,因为映射不允许您寻址指针Go 如何将指针值从映射传递到函数参数,go,Go,所以我的用例是: 1.生成指向结构车的指针映射 2.变异图 3.迭代映射并传递给函数 但我不知道如何将指针的值从映射传递到函数,因为映射不允许您寻址指针 有什么更好的方法吗?您可以在调用过程中取消对cars map值的引用,这将使用car指针指向的值调用函数: getSize*汽车 如果没有,则应收到编译错误: 程序go:31:16:无法将car type*car用作参数中的car类型 getSize 你能发布一个最简单的可执行go操场示例吗?你为什么要在车上来回走动来设置同一把钥匙@dm035
有什么更好的方法吗?您可以在调用过程中取消对cars map值的引用,这将使用car指针指向的值调用函数: getSize*汽车 如果没有,则应收到编译错误: 程序go:31:16:无法将car type*car用作参数中的car类型 getSize
你能发布一个最简单的可执行go操场示例吗?你为什么要在车上来回走动来设置同一把钥匙@dm03514没有在车上设置同一个键,我只是通过设置一个值来演示,你能详细说明一下你所说的尊重车地图值是什么意思吗?也许有一个代码示例?
type Car struct {
Model string
Size int
}
func getSize(car Car) {
fmt.Println(car.Size)
}
func main() {
cars := make(map[string]*Car)
// fill cars with stuff
cars["Toyota"] = &Car{
Model: "Toyota",
Size: 2,
}
for _, car := range cars {
cars["Toyota"].Size = 4
}
for _, car := range cars {
//somehow get the value of car and insert into function
getSize(car)
}
}
package main
import (
"fmt"
)
type Car struct {
Model string
Size int
}
func getSize(car Car) {
fmt.Println(car.Size)
}
func main() {
cars := make(map[string]*Car)
// fill cars with stuff
cars["Toyota"] = &Car{
Model: "Toyota",
Size: 2,
}
cars["Toyota"].Size = 4
for _, car := range cars {
//somehow get the value of car and insert into function
getSize(car)
}
}