';声明和未使用';因为Go编译器可以';不考虑循环吗?
糟糕的标题,但我不知道如何在字符限制内描述它 作为一个学习练习,我正在尝试编写一个模拟彩票抽奖的小围棋程序。它抽取六个随机数作为获胜集,然后连续抽取随机整数的随机数组,直到再次获得该集 首先,我编写了一个函数,它接受一个通道并无限循环“向通道添加6个随机整数的数组”: 接下来,我从频道中拿一盘中奖(如:48 15 16 23 42),然后是“当前”盘,意思是最近的平局。我将我玩的游戏计数器设置为1:';声明和未使用';因为Go编译器可以';不考虑循环吗?,go,Go,糟糕的标题,但我不知道如何在字符限制内描述它 作为一个学习练习,我正在尝试编写一个模拟彩票抽奖的小围棋程序。它抽取六个随机数作为获胜集,然后连续抽取随机整数的随机数组,直到再次获得该集 首先,我编写了一个函数,它接受一个通道并无限循环“向通道添加6个随机整数的数组”: 接下来,我从频道中拿一盘中奖(如:48 15 16 23 42),然后是“当前”盘,意思是最近的平局。我将我玩的游戏计数器设置为1: winning := <- ch current := <- ch games_pl
winning := <- ch
current := <- ch
games_played := 1
问题是:最后第四行,
current:=第二个电流在if
范围内。替换current:=第二个电流在if
范围内。替换<代码>当前:=。。
runtime.GOMAXPROCS(2)
ch := make(chan [6]int, 250)
go draw(ch)
winning := <- ch
current := <- ch
games_played := 1
for {
if winning == current {
fmt.Println(games_played)
break
} else {
current := <- ch
games_played += 1
}
}
if winning == current {
fmt.Println(games_played)
break
} else {
current := <- ch
games_played += 1
}
if winning == current {
fmt.Println(games_played)
break
} else {
var current int[6] // you don't want this, as it shadows your
// current form the outher scope
current = <- ch // you want only this guy
games_played += 1
}