C#在单例的枚举成员变量上设置值滞后于Unity编辑器
我使用静态实例变量方法实现了一个单例。 当我将它的一个成员变量设置为C#在单例的枚举成员变量上设置值滞后于Unity编辑器,c#,unity3d,enums,singleton,unity5,C#,Unity3d,Enums,Singleton,Unity5,我使用静态实例变量方法实现了一个单例。 当我将它的一个成员变量设置为enum类型时,编辑器会滞后,每次发生这种情况时,我都必须强制退出它 public class SharedData { private static SharedData m_onlyInstance = null; public int a,b,c; public ESampleType eType = ESampletype.Default; public static Share
enum
类型时,编辑器会滞后,每次发生这种情况时,我都必须强制退出它
public class SharedData {
private static SharedData m_onlyInstance = null;
public int a,b,c;
public ESampleType eType = ESampletype.Default;
public static SharedData Instance {
get {
if (m_onlyInstance == null) {
m_onlyInstance = new SharedData();
}
return m_onlyInstance;
}
}
//other codes...
}
public class TestClass : MonoBehaviour {
[SerializeField]
Slider m_sliderTest;
public void onStartBtn(){
Debug.Log("---START---");
SharedData data = SharedData.Instance;
ESampleType eType = (ESampleType)(int)m_sliderTest.value;
data.a = 1;
data.eType = eType; //***when I commented this line, the lag disappear.
data.b = 2;
data.c = 3;
Debug.Log("---END---");
}
//other codes...
}
此外,当有问题的行出现时,日志“--START-->”和“--END-->”将不会显示。它似乎编译得不好。真奇怪
这是对C的限制吗?请帮帮我这里发生了什么事。我需要解决这个问题
我的Unity编辑器版本是5.4.1.40776
您需要在singleton类中包含一个私有构造函数。@ChrisPickford我在原始代码中有它。我只是没有把它包含在我的虚拟代码中。这似乎不是代码固有的问题。也许把这个问题带到Unity论坛或QA网站会找到更有意义的答案。没有单一行为吗?@Bijan TestClass是单一行为。我会编辑它。您需要在singleton类中包含一个私有构造函数。@ChrisPickford我在原始代码中有它。我只是没有把它包含在我的虚拟代码中。这似乎不是代码固有的问题。也许把这个问题带到Unity论坛或QA网站会找到更有意义的答案。没有单一行为吗?@Bijan TestClass是单一行为。我会编辑它。