for _, arg := range flag.Args() {
go func() {
path.Walk(arg, dupes, walkerrs)
walkend <- true
}()
}
for _ := range flag.Args() {
if !<-walkend {
os.Exit(1)
}
}
第二次使用_
会出现此错误:no new variables on left side of :=
。我做错了什么?
答案 0 :(得分:7)
:=
是一个简短的变量声明。 _
不是真正的变量,因此您无法声明它。
当您没有任何新变量时,应该使用=
。
答案 1 :(得分:6)
使用此行:
for _ = range flag.Args() {
如果省略空白标识符的初始化,则错误应该消失。
答案 2 :(得分:4)
此问题的更新,从Go 1.4(当前提示)开始,您可以使用for range flag.Args() { ... }
直接跳过_ =
部分。