2023-09-28 16:06
原来是 bug 吗。。我还以为原本就这样设计的
2023-09-24 10:03
是的 加环境变量可以提前使用 GOEXPERIMENT=loopvar
2023-09-23 00:45
啥意思?
go func() {
fmt.Println(v)
done <- true
}() 这段代码以前循环结束,打印的都是c,1.22版之后可以打印出a,b,c?
2023-09-23 08:48
是这个意思
2023-09-22 22:25
go需要一个lambda表达式,现在的func()还是不够简洁
2023-09-22 18:29
笑死,之前还有人洗是为了效率,现在还说屁
2023-09-22 17:47
for _, v := range values {
    go func(v string) {
      fmt.Println(v)
      done <- true
    }(v)
  }
2023-09-22 17:13
🤣osc
2023-09-22 17:13
osc后台用go写的接口,就有遇到过这个问题。
2023-09-22 16:10
这就是之前的bug,不是什么新特性
2023-09-22 12:26
有js var在for循环里面那个味道了。js是换成let解决的
2023-09-22 09:11
这种情况在Rust中不可能出现,因为Rust有所有权机制,还有闭包还move关键字。
2023-09-22 09:11
改成

go func(v string) {
fmt.Println(v)
done <- true
}(v)

2023-09-22 10:25
在以前的Go语言里,要么重定义一个变量,比如 v := v,要么改成你说的这种传递一个v,在新版本里可能会改成直接使用就可以,不需要重新复制或者使用函数参数传递。
2023-09-22 17:47
对的
2023-09-21 23:20
😂😂梦回JS?
2023-09-21 20:56
内存泄露?
2023-09-21 19:07
1.21开始不支持win7,鬼火绿!
回复 @
{{emojiItem.symbol}}
返回顶部
顶部