2017-01-29 21 views
0

私はGoを学習しようとしていますが、単純なforループを試してみると、動作させるのが難しいと感じました。 main関数で変数aを定義すると、このコードはコンパイルされず、 '宣言されているが使用されていない'というエラーが返されます。変数をいつ宣言する必要があるのか​​、いつ宣言するべきなのか理解できません。ありがとう。表現a:=0がループのスコープ内で同じ名前で新しい変数を宣言しているためGo変数が宣言され使用されていません

package main 

import "fmt" 

func main() { 


    for a:=0;a<4;a++ {  
     fmt.Printf("value of a is %d\n",a) 
} 
+0

コードの末尾に閉じ括弧 '}'がありません。それを意図したとおりに追加する – 6502

+0

申し訳ありませんが、間違ってコピーされました。しかし、変数の宣言はどうすればいいですか?いつ変数を宣言し、いつ宣言するべきですか? –

答えて

1

理由、あなたは「を使用していないエラー」持っている、です。ループの前に変数 'a'がすでに宣言されている場合は、for a=0; a<4; a++(コロンなし)に変更します。

1

あなたは

  1. 利用可能な2つのオプションが明示的に変数を宣言してから

    var a int 
    a = 0 
    
  2. 宣言を使用して(それが推測される)

    タイプを指定しなくても、1つのステートメントで割り当てを持っています
    a:=0 
    

=:=の違いに注意してください。 :=を2回使用すると、再宣言としてカウントされます。換言すれば、=は割当て専用ですが、:=は宣言と割当てのためのものです。

関連する問題