Warum erhalte ich in meinem Go-Code die Fehlermeldung „vorher deklariert und nicht verwendet'?

Patricia Arquette
Freigeben: 2024-10-31 12:47:31
Original
730 Leute haben es durchsucht

Why am I getting the

Go – Deklarierter Variablenname prev wird im gegebenen Funktionsumfang nicht verwendet

Im folgenden Codeausschnitt wird die Fehlermeldung „prog.go:13: prev deklariert und nicht“ angezeigt used“ wird angezeigt.

<code class="go">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 < 10; i++ {
        fmt.Println(f())
    }
}</code>
Nach dem Login kopieren

Der Fehler tritt auf, weil die Variable prev in der Funktion fibonacci deklariert ist, aber nie verwendet wird. Konkret erstellt die Zeile prev := temp eine neue lokale Variable mit dem Namen prev. Diese Variable unterscheidet sich von der im äußeren Bereich deklarierten vorherigen Variablen. Um den Fehler zu beheben, müssen wir den Code ändern, um die vorherige Variable aus dem äußeren Bereich zu verwenden, anstatt eine neue lokale Variable zu erstellen.

Hier ist der korrigierte Code:

<code class="go">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 < 10; i++ {
        fmt.Println(f())
    }
}</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWarum erhalte ich in meinem Go-Code die Fehlermeldung „vorher deklariert und nicht verwendet'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!