inazuma code :変数
変数 とは、値に名前を付けて一時的に保持しておく「箱」のようなものです。
変数には 不変(immutable) と 可変(mutable) の 2 種類があり、宣言時の書き方によって再代入の可否が決まります。
基本構文
inazuma code では、let
キーワードを使って変数を宣言します。
let x = 初期値;
- 宣言時に必ず初期値を指定します。
- 変数名は英字または
_
で始まり、英数字と_
を含められます。 - 宣言文そのものは値を返さないため、式の評価結果としては
null
になります。
不変変数
mut
を付けずに宣言すると、不変変数になります。
不変変数には、宣言後に値を再代入できません。
let x = 5;
x = 10; // エラー:不変変数に代入はできません
x++; // エラー:後置インクリメントは再代入が発生する
可変変数
let mut
を使って宣言すると、可変変数になります。
可変変数には再代入できます。
let mut count = 0;
count = count + 1; // OK
count++; // OK
スコープ
変数のスコープは ブロック単位 です。
ブロック { ... }
内で宣言された変数は、そのブロック内および入れ子のブロックからのみ参照できます。
親ブロックで宣言された変数は、子ブロック内で参照・再代入できます(可変変数の場合)。
let mut x = 5;
if (true) {
x = 10; // 親スコープの変数を更新
}
x; // 10
まとめ
- 宣言方法は
let
(不変)またはlet mut
(可変)です。 - 初期値は必須です。
- 宣言文は値を返しません。
- スコープはブロック単位です。
- 再代入は可変変数のみ可能です。