已采纳回答 / 慕哥1206660
"_"是匿名变量,被赋值给匿名变量的数据丢弃不处理,匿名变量不占用命名空间,不会分配内存。匿名变量与匿名变量之间也不会因为多次声明而无法使用。这里是将接口类型断言的返回值赋值给匿名变量。
2018-09-30
func main() {
fmt.Println("Enter main")
defer func() {
if e := recover(); e != nil {
fmt.Printf("Fatal error: %s\n", e)
}
}()
outerFunc()
fmt.Println("Quit main")
}
fmt.Println("Enter main")
defer func() {
if e := recover(); e != nil {
fmt.Printf("Fatal error: %s\n", e)
}
}()
outerFunc()
fmt.Println("Quit main")
}
2018-09-06
func main() {
ch4 := make(chan int, 1)
for i := 0; i < 4; i++ {
select {
case e, ok := <-ch4:
if !ok {
fmt.Println("End.")
return
}
fmt.Println(e)
close(ch4)
default:
fmt.Println("No Data!")
ch4 <- 1
}
}
}
ch4 := make(chan int, 1)
for i := 0; i < 4; i++ {
select {
case e, ok := <-ch4:
if !ok {
fmt.Println("End.")
return
}
fmt.Println(e)
close(ch4)
default:
fmt.Println("No Data!")
ch4 <- 1
}
}
}
2018-09-05