gpt4 book ai didi

pointers - 使用其引用访问 map

转载 作者:IT老高 更新时间:2023-10-28 13:02:52 26 4
gpt4 key购买 nike

我尝试遍历一个映射,我将其作为指向函数的指针传递,但我找不到访问元素的方法。这是代码:

func refreshSession(sessions *map[string]Session) {
now := time.Now()
for sid := range *sessions {
if now.After(*sessions[sid].timestamp.Add(sessionRefresh)) {
delete( *sessions, sid )
}
}
}

此示例中的第 4 行返回以下编译错误:

./controller.go:120: invalid operation: sessions[sid] (type *map[string]Session does not support indexing)

我试过括号,但没有效果。如果我去掉所有引用运算符 (* &) 那么它编译得很好。

我该怎么写?

最佳答案

您不需要在 map 上使用指针。

Map types are reference types, like pointers or slices

如果您需要更改 Session,您可以使用指针:

map[string]*Session

关于pointers - 使用其引用访问 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28384343/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com