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

2018年9月18日GoA Tour of Go,Goのお勉強,Go言語,初期化,変数Go,A Tour of 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言語のお勉強」インデックス

このシリーズについて

「A Tour of Go」を題材にした記事は現在書き直し中…。_(:3」∠)_
ほとんどサボりが原因で尻切れとなっていたシリーズですが、最近になってようやく続きを書きたくなり再開をしようと思ったんです。が、古い記事を見返すとデータ・フォーマットが古かったり内容が分かり難かったりに気づきまして、、、この際だからと最初の記事から書き直しをすることになりました…