GoLang == true ausgewertet, aber nicht verwendet
In dem code versuche ich zu tun, einige Operationen
is_html := false;
//Check, if HTMl is exist
for i := 0; i < len(modules_arr); i++ {
if modules_arr[i] == "html" { is_html := true }
}
if is_html ==true
{
fmt.Printf("%v", "asdasd")
}
Aber ich bekomme eine Fehlermeldung:
./api.go:26: missing condition in if statement
./api.go:26: is_html == true evaluated but not used
Error: process exited with code 2.
- bitte formatieren Sie den code richtig, zuerst mit
go fmt
. is_html := true
sollte seinis_html = true
bemerken das fehlen eines:
- Ich rollte wieder Bearbeiten diese Frage, die verändert die Formatierung, denn die Frage ging Weg, als er fixiert die Formatierung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
if-Anweisungen muss die { auf der gleichen Linie, im gehen
Bedeutet dies, dass Sie nicht
Wird der richtige code
Lesen http://golang.org/doc/effective_go.html#semicolons für ein besseres Verständnis
if isHTML {
...Beispielsweise
Ausgabe:
Die Aussage
is_html := true
deklariert eine neue variable, verstecken Sie die variable in der Anweisung deklariertis_html := false
. Schreibenis_html = true
zu verwenden, die zuvor deklarierte variable.:=
versehentlich statt=
ist eine böse gotcha, die schwierig sein kann, zu erkennen (zum Glück hatte der compiler weigert sich, wenn die "neue " variable" ist nie gelesen). Siehe zum Beispiel go-traps.appspot.com/#collatz-conjectureBeispielsweise
Als @Dustin schon angedeutet, sollte es
isHtml
.https://play.golang.org/p/Whr4jJs_ZQG