「Go/変数」の版間の差分

削除された内容 追加された内容
Ef3 (トーク | 投稿記録)
タグ: 2017年版ソースエディター
Ef3 (トーク | 投稿記録)
M {{Nav}}
タグ: 2017年版ソースエディター
1 行
{{Nav}}
== 変数宣言 ==
変数宣言では、1つまたは複数の変数を作成し、対応する識別子を結合し、それぞれに型と初期値を与えます<ref name="Declarations_and_scope">{{cite book
13 ⟶ 14行目:
 
==== 初期化と型推論 ====
Go言語では、変数宣言の初期値から宣言される変数の型を推論します。
;[https://paiza.io/projects/CaES_qcOAYx229wAJi6YZw?language=go コード例]:<syntaxhighlight lang="go" highlight="6,7" line>
package main
36 ⟶ 37行目:
</syntaxhighlight>
fmtパッケージのPrintf関数を使って表示しています。
名前から予想がつく通り、[[C言語]]の標準ライブラリー関数の printf() に習った関数ですが、Go言語の慣習に従って関数名の最初だけ大文字です。
機能的にも、C言語のprintfにはない型指定子 %v(式の値に自然な形式で表示する)と %T(式の型を表示する)の様な拡張が施されています。
 
214 ⟶ 215行目:
Conversion = Type "(" Expression [ "," ] ")" .
</syntaxhighlight>
Go言語は静的型システムを導入しており、C言語より厳密に演算における型の一致性を求めます(IntegerとRealの足し算ですら明示的な型変換が必要なPascalと同等に厳格です)。
JavaScriptやRubyなどの動的な型システムを採用したシステムは、「数値型に文字列型を足す」、「文字列を1進める」などの異なる型同士の演算に於いて暗黙の型変換が行われます。
Go言語では、どうしても異なる型を持った変数を足しあわせる処理などを場合、どちらかの変数の型に変換し、型を一致させる必要があります。
 
=== 数値どうしの型変換 ===