go map不能使用指针作为key
package main
import "fmt"
type student struct {
name string
age int
}
func main() {
m := make(map[*student]bool)
s1 := &student{
name: "a",
age: 17,
}
s2 := &student{
name: "a",
age: 17,
}
m[s1] = true
fmt.Println(m[s2])
}

因为key是指针类型时比较的是内存地址,不是结构体内容。

把key从指针类型改成结构体类型。
浙公网安备 33010602011771号