unity(C#)日記~int型の初期値、シングルトンなクラス、
//
今日の発見&調べたこと
int型の初期値
int a=new int();
これでint型のaという変数は初期化されましたが、値が代入されていません。僕はここはnullだと思っていたのですが、実は0が入っていました。で、これについて調べたらガッツリとここに書いてありました笑 なので、"if( a == null ) なんて間違ってもしてはいけません!(してました。)
シングルトンなクラス
シングルトンなクラスとは、絶対にそのクラスが一つであるということを保証するクラスのことだそうで、違う2つの場所から生成しても、どちらでも共通のものが参照されます。
作成例
using UnityEngine; public class HogeSingleton { private static HogeSingleton hInstance; public static HogeSingleton Instance { get { if( hInstance == null ) hInstance = new HogeSingleton(); return hInstance; } } public int status = 10; public void setStatus ( int num ) { status = num; } }
後は以下のようにすれば、いつものように使うことができます。多分
HogeSingleton hoge = HogeSingleton.Instance;
hoge.setStatus(20);