【发布时间】:2010-01-24 21:35:20
【问题描述】:
Unity3D 中的 C# 脚本环境(在 Mono 下运行)在销毁对象时具有良好的行为。所有指向被破坏对象的引用都自动变为空:
GameObject ref1 = (GameObject)Instantiate(obj);
GameObject ref2 = ref1;
if (ref1 != null)
Debug.Log("ref1 is not null");
DestroyImmediate(ref1);
if (ref1 == null)
Debug.Log("ref1 is null");
if (ref2 == null)
Debug.Log("ref2 is null");
输出:
ref1 is not null
ref1 is null
ref2 is null
关于如何实现这一点的任何想法?
谢谢
【问题讨论】:
-
只要发现 ref1 和 ref2 不是 GameObject 而是 System.Object,那么它就行不通了。
标签: c# reference variable-assignment