はじめに
Godot EngineのGDScriptにおいて、変数を宣言・代入する際に使う := と = の詳細な違いや使い分けについてまとめました
詳細な違い
:= (型推論による代入・宣言)
-
右側の値から自動的に型を推論し、変数の型を固定します
例**:var hp := 100(右辺が整数なのでint型に固定される) - 一度決まった型と違う型の値を後から入れようとするとコンパイルエラーになります
- エディタでのコード補完が効きやすくなり、型違いによるミスの未然防止やバグ防止に役立ちます
= (通常の代入・宣言)
- 型を固定せず、自由に変数の値を書き換えられる(動的型付け)代入を行います
-
例:
var name = "Godot"(型を明示しない通常の宣言) -
すでに宣言済みの変数に新しい値を入れるときにも
=を使います(例:name = 50) - 型が動的に変わるため柔軟ですが、予期せぬ型変換やバグに気づきにくくなることがあります
まとめ比較
| 記号 | 役割 | 型の固定 | 再代入 |
|---|---|---|---|
:= |
新しい変数の宣言と代入 | あり(右辺から推論) | 可能(同じ型のみ) |
= |
変数への代入・通常の宣言 | なし(または明示された型に従う) | 可能(型制限なし) |
使い分けのポイント
-
基本的には
:=の使用を推奨: 安全性が高まり、補完も効くため開発効率が上がります -
再代入時の注意: すでに宣言済みの変数に代入する場合は、
:=ではなく=を使用します