//打印出来都是3,3,3,3
//因为,for是对指针对引用,这里是对同一个i对地址进行引用
for i :=0;i<4;i++ {
go fun(){
fmt.Println(i)
}()
}
//这里打印出来的是:0,1,2,3
//因为函数传递是值传递
//对i进行了重新对赋值,先把i :=i,然后,再将新对i值传递进去
for i :=0;i<4;i++ {
go fun(i int){
fmt.Println(i)
}(i)
}