コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【C#】イベントのNULLチェックを省略する

今までC#でイベントを使う時は下記のように記述していて

public event Action ChangedState;

private void OnChangedState()
{
    var f = ChangedState;
    if (f != null)
    {
        f();
    }
}

毎回NULLチェックを行わなければいけないことを煩わしく感じていましたが

public event Action ChangedState = delegate {};

private void OnChangedState()
{
    ChangedState();
}

初期化の段階で空のメソッドを登録しておくだけで
NULLチェックを省略することができます、便利!