A Tour of Go をやる! – その10 「Variables with initializers」砂でも詰めるか… 【Go言語/A Tour of Go】

2018年9月18日Go,Go言語のお勉強A Tour of Go,Goのお勉強,Go言語,初期化,変数Go,Go言語のお勉強,Go言語,初期化,変数

記事ヘッダー_Variables_with_initializers

「A Tour of Go をやる!」シリーズの第10回目。 二桁回到達… !

引き続いての変数回。今回は初期化な内容となっているようです。

今回進めるページ「Variables with initializers」

タイトルがなげぇ…、はどうでもよくて「A Tour of Go」のページはこちら。

タイトルの「Variables with initializers」とは?

初期化子を使った変数…かな?
宣言された変数に任意の値(初期化子?)を入れる、ってことですね。

変数の初期化に関する言語仕様を確認する

前回も引用した「Variable declarations」。
初期化の部分を確認します。

If a list of expressions is given, the variables are initialized with the expressions following the rules for assignments. Otherwise, each variable is initialized to its zero value.

式のリストが指定されている場合、変数は割り当ての規則に従って式で初期化されます。それ以外の場合、各変数はゼロ値に初期化されます。(by Google Translated.)

https://golang.org/ref/spec#Variable_declarations
VarDecl     = "var" ( VarSpec | "(" { VarSpec ";" } ")" ) .
VarSpec     = IdentifierList ( Type [ "=" ExpressionList ] | "=" ExpressionList ) .

var i int
var U, V, W float64
var k = 0
var x, y float32 = -1, -2
var (
	i       int
	u, v, s = 2.0, 3.0, "bar"
)
var re, im = complexSqrt(-1)
var _, found = entries[name]  // map lookup; only interested in "found"

基本となる書き方

変数を初期化するとき、よく使う書き方です。

// 変数初期化の基本的な書き方
var [変数名] [型名] = [値(初期化子)]
// 型名を省略すると [値] に沿った型になる
var [変数名] = [値(初期化子)]

// e.g.
// int型 の変数 i を宣言し 7 で初期化
var i int = 7
// int型 の変数 x と y を宣言し 3 と 6 で初期化
var x, y int = 3, 6

型を省略すると…

初期化子として指定した [値] の種類によって型が決定する。
ちなみにこういった 数値や文字列そのものの値 は リテラル値 と呼ばれます。

数値はそのまま、文字はダブルクォートで括る。
例えば、10行目のように数値をダブルクォートで括ると文字として扱われます。

サンプルプログラムを見てみる。

「A Tour of Go」のサンプルプログラムを見てみます。今回のお題に関係する箇所にはコメント打ってます。

処理内容は変数をそれぞれ宣言し初期化。最終的に変数の内容を出力しています。
コレと言った複雑な処理はしていない特に中身のない(?)プログラムです。_(:3」∠)_

さいごに

今回は変数を初期化する方法を覚えました。
「A Tour of Go」では暫く変数な内容が続くようです。

というわけで、また次回~٩( 'ω’ )و

Go言語のお勉強 記事一覧

  1. うっしー「Go」に手を出す…
  2. 「A Tour of Go」をやる! シリーズ
    1. その1 「Hello, 世界」
    2. その2 「Packages」だってさ~
    3. その3 「Imports」いんぽーっ!
    4. その4 「Exported names」見えますか?
    5. その5 「Functions」 これは機能です。
    6. その6 「Functions continued」(?) 型しょ~略っ!
    7. その7 「Multiple results」 一粒で二度美味しい?
    8. その8 「Named return values」 お前は戻り値だ…
    9. その9 「Variables」入れ物!
    10. その10 「Variables with initializers」砂でも詰めるか…
    11. その11 「Short variable declarations」 略パート2!
    12. その12 「Basic types」 型抜きってあったな…
    13. その13 「Zero values」 生まれ持った中身は?
    14. その14 「Type conversions」 1は1.0になれる!

「A Tour of Go」記事は現在書き直し中…。_(┐「ε:)_
サボったりサボったり…で尻切れシリーズになっていましたが、最近続きを書く気になりました。が、これまでの記事を改めて見返すと記事のデータ・フォーマットが古く、この際だからと最初の記事から書き直しております。