No trecho de código a seguir, a mensagem de erro "prog.go:13: prev declarado e não usado" é exibido.
package main
import "fmt"
// fibonacci is a function that returns
// a function that returns an int.
func fibonacci() func() int {
prev := 0
curr := 1
return func() int {
temp := curr
curr := curr prev
prev := temp
return curr
}
}
func main() {
f := fibonacci()
for i := 0; i O erro ocorre porque a variável prev é declarada na função fibonacci, mas nunca é usada. Especificamente, a linha prev := temp cria uma nova variável local chamada prev. Esta variável é diferente da variável prev declarada no escopo externo. Para corrigir o erro, precisamos modificar o código para usar a variável prev do escopo externo em vez de criar uma nova variável local.
Aqui está o código corrigido:
package main
import "fmt"
// fibonacci is a function that returns
// a function that returns an int.
func fibonacci() func() int {
prev := 0
curr := 1
return func() int {
temp := curr
curr = curr prev
prev = temp
return curr
}
}
func main() {
f := fibonacci()
for i := 0; i
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3