1.System中的object与Unity中的object
List<object> Test = new List<object>();
...
if(Test[i] != null)
{
(Test[i] as GameObject).AAA();
}
项目中有类似代码,但是AAA那块会抛空异常,原因是gameobject在其他地方已经被释放了,然后Test里放得是System.object,所以Test[i]不为空,应该先转为 Gameobject然后再判空。
2.ApplicationwantsToQuit, Application.quitting 与 OnApplicationQuit
监听app退出事件应该用 Application.wantsToQuit, Application.quitting,不要混用ApplicationwantsToQuit与OnApplicationQuit。因为OnApplicationQuit只要有退出事件就会执行,不管是不是真的退出了。
本文讨论了Unity中System.object与GameObject的区别,指出在处理对象引用时应确保先转换并判断其非空。同时强调了监听应用程序退出事件时,应使用Application.wantsToQuit而非OnApplicationQuit,以避免不必要的资源清理问题。





