2017/03/03

[golang][雰囲気]varがない変数らしきもの (1)

なんとなくの知識で、Go言語で書かれたソースファイルを読んでいる。

 

読んでいるソースファイルで、

  • varが付いていないのに代入している
  • そのファイル内で何箇所も出てくる
  • ファイル内では、varが付いていない。

となっていたので、これはグローバル変数だろう、と当たりを付けた。
が、他のファイルを検索してもvarしている箇所がない。。。
MeteorでJavaScriptを書いていて、varを付けたり付け忘れたりで苦労しているのだが、Goもそういう言語なのだろうか?


宣言とスコープ
Declarations and scope

スコープ制御は、ブロックを使うとのこと。
ブロックは、{...}の中のことで、ここはCなどと同じようだ。
そして変数の宣言は、varが付く、となっている。
では、今回見つけたやつは、グローバル変数ではないし、そもそも変数ではないということか。

 

じゃあ、なんなのだ?
代入されて、メンバ関数を呼び出しているようなので、単なるエイリアスのような感じもする。
でも、Go言語のaliasは「alias type」みたいなので、typedef相当なのかも。

デバッグすれば分かると思うのだが、ソースだけで何とかしたいのだ。。。
時間がないので、次回に続きます。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。