2013年10月31日木曜日

golangのifやforの書き方について

golangのTutorialをやった.ifとかforの書き方がCと違うのでメモ.

golang では,for でループを表現する. 以下は例.

条件を囲む小括弧は付けてはいけない. また,中括弧は必ず付けなければならない.これはPerlと一緒だ.

後の方の説明を見ると,ifも同様の構文で,中括弧は必須だ. ただし,ifの場合の説明では,条件を囲む小括弧は不要とだけ書いてある. まあ,小括弧を付けても,条件式の評価値が変化するわけではないので,問題ない. for の場合は,セミコロンが入るので,構文としておかしくなるということか. ただし,ifについては,条件式の前に一文だけ?ステートメントを書ける. この際は,条件式の前のステートメントと条件式はセミコロンで区切るため,小括弧で囲めない.

これはOKで, これはダメ.

Tutorial では,for ではセミコロンを省略できるとある. その例として挙げられているのは以下のコード.

Tutorial は導入なので書かれていないけど,セミコロンを省略する場合は,すべてのセミコロンを省略しないといけない. つまり,以下のようなコードはsyntax errorだ.

golangはCとsyntaxが似てるものの割と自由に書けるのでとても書きやすいし,Cプログラマは勉強しやすい. 邪魔なセミコロンが取り払われたのは良い. ただ,似ていることで勘違いから発生するバグもあるので注意して書かないといけない.

駄文: 関数呼び出しのときに引数を示す括弧は不要なんじゃないかなーとか思う.

0 件のコメント:

コメントを投稿