GoLang == true évalué mais pas utilisé
À l'intérieur du code, j'ai essayer de faire quelques opérations de
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")
}
Mais j'obtiens une erreur:
./api.go:26: missing condition in if statement
./api.go:26: is_html == true evaluated but not used
Error: process exited with code 2.
- veuillez formater votre code correctement d'abord à l'aide de
go fmt
. is_html := true
shoudl êtreis_html = true
constater l'absence d'un:
- J'ai roulé la modification de cette question qui a changé la mise en forme, parce que la question s'en alla quand il fixe la mise en forme.
Vous devez vous connecter pour publier un commentaire.
si les déclarations des besoins de l' { sur la même ligne en aller
Cela signifie que vous ne pouvez pas faire
Le code correct est
Lire http://golang.org/doc/effective_go.html#semicolons pour une meilleure compréhension
if isHTML {
...Par exemple,
De sortie:
La déclaration
is_html := true
déclaré une nouvelle variable, le masquage de la variable déclarée dans la déclaration deis_html := false
. Écrireis_html = true
à utiliser précédemment variable déclarée.:=
par erreur à la place de=
est un vilain piège qui peut être difficile à détecter (heureusement le compilateur refuse si la "nouvelle variable" n'est jamais lu). Voir par exemple go-traps.appspot.com/#collatz-conjecturePar exemple,
Comme @Dustin déjà indiqué, il doit être
isHtml
.https://play.golang.org/p/Whr4jJs_ZQG