1. 程式人生 > >Unity C#單例模式

Unity C#單例模式

大家好,我是小唐,好久沒有發東西了,Unity裡面的指令碼因為都是繼承了MonoBehaciour類,所以建立單例模式的時候有些區別。
下面就給大家分享一下Unity繼承了MonoBehaviour類的單例模式的寫法:
using UnityEngine;
using System.Collections;

public class Test : MonoBehaviour 
{
	private static Test _instance;
	public static Test Instance
	{
		get
		{
			if (!_instance) 
			{
				_instance=GameObject.FindObjectOfType(typeof(Test)) as Test;
				if (!_instance) 
				{
					GameObject obj =new GameObject ();
					obj.name="Test";
					_instance =obj.AddComponent(typeof(Test)) as Test;
				}
			}
			return _instance;
		}
	}
}