csharp SingletonClass for Unity
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp SingletonClass for Unity相关的知识,希望对你有一定的参考价值。
using UnityEngine;
public class SingletonMonoBehaviour<T> : MonoBehaviour where T : SingletonMonoBehaviour<T>
{
protected static T instance;
/// <summary>
/// インスタンスの取得
/// </summary>
public static T Instance {
get {
if (instance == null) {
instance = (T)FindObjectOfType (typeof(T));
if (instance == null) {
Debug.LogWarning (typeof(T) + "is nothing");
}
}
return instance;
}
}
/// <summary>
/// シーン開始時にインスタンスの生成をおこなう
/// </summary>
protected void Awake() {
CheckInstance();
}
/// <summary>
/// インスタンスが存在するかのチェック
/// </summary>
/// <value> なければ新たに生成 </value>
protected bool CheckInstance() {
if( instance == null) {
instance = (T)this;
return true;
} else if( Instance == this ) {
/// シーンを通して存在できるように
DontDestroyOnLoad (this.gameObject);
return true;
}
Destroy(this);
return false;
}
}
以上是关于csharp SingletonClass for Unity的主要内容,如果未能解决你的问题,请参考以下文章
csharp 基本for循环的示例。
csharp 循环(while,for,do)
csharp 如何使用for循环反转数组的示例。
csharp 如何使用for循环反转数组的示例。
单子类模型
使用NDK for Android编译GRPC的CSharp扩展