【C#】変数
変数とは
特定の「値」を持つことができる便利なもの。
値とは、例えば3や10.5みたいな数値とか、“ねこ”みたいな文字列とかのこと。
変数ごとにどの種類の値を持つことができるかを決めなければならない。値の種類のことを「データ型」と呼ぶ。
変数が持っている値はコロコロ変えたりすることができる(逆に固定値にしたりもできる)のでとても便利。
定義方法
1. アクセス修飾子
2. データ型
3. 変数名
の順に書く。
// アクセス修飾子 データ型 変数名 private float Speed;
順に説明していく。
アクセス修飾子 ☆
変数の中身の取得や変更ができる範囲を決定するもの。
privateにすると、そのクラス内でしか変数の値を見たり変えたりすることができない。publicにすると、外のクラスからでも変数の値を見たり変えたりできる。あとUnityのinspectorタブでも値をいじれるようになる。
他にもprotectedとかinternalがあるけど、とりあえずprivateとpublicが分かれば大丈夫。
ちなみに省略して書くと、その変数は暗黙的にprivateとして扱われる。
// privateとして扱われる float Speed;
データ型
前述の通り、値の種類のこと。自分は単に「型」と呼んだりもする。
例えば、intなら整数が入るし、floatなら小数が入るし、stringなら文字列が入る。
決められた型ではない値を変数に代入しようとすると基本的には怒られるので注意。
// "速い"はfloat型ではなくstring型なのでエラー private float Speed = "速い";
変数名
変数の名前。自由に名前を付けていいが、他で既に使われている名前だとエラーが出たりする。
分かりやすい名前にしないと、後から見たときにわけが分からなくなるので注意。
ちなみに自分はいつも、変数名の頭に「m_」を付けるようにしている。こうするとパッと見で、それが自分の定義した変数だと分かるのでおすすめ。
// m_を付けると分かりやすい private float m_Speed;
変数の初期値
変数は定義するとき、初期値を設定することができる。
// = を使って初期値を設定 private float m_Speed = 3f;
初期値を設定しない場合、その変数には既定値(デフォルト値)が入る。既定値は型によって異なる。例えば、floatなら既定値は0f。
// 初期値を設定していないので既定値が代入される private float m_Power; // m_Powerは0f
既定値について詳しく知りたい人はこちらをチェック。
ローカル変数
メソッドの中にも変数を定義することができる。メソッドの中で定義された変数をローカル変数という。
private void SampleMethod() { // ローカル変数 // 基本的性質は普通の変数とは変わらない int num; }
定義するときにアクセス修飾子は不要。ローカル変数はそのメソッド内でしか使うことができない。
メソッド内にポンと定義して使い捨てができる便利な変数、そんなイメージで使う。
メソッドについて詳しく知りたい方はこちらをチェック。