Unity GameObject判空問題


引用(https://jacx.net/2015/11/20/dont-use-equals-null-on-unity-objects.html)

 

 這其實就是問題出現的主要原因,Unity是一個用C#包裝起來的C++引擎,他提供的Destory方法只是把C++部分的非托管資源釋放了,在C#中的托管資源要等GC自己去釋放。

 因為Unity重載了UnityEngine.Object的==方法,所以在C#中使用 if ( obj == null)是沒問題的。但是通過LUA調用時,C#對象可能還或者,但他的靈魂已經消失了。

記住一點,不要直接在lua中使用 if obj == nil 來判斷空值就可以了。

更具體的信息,可以參考上面發的文章,介紹的非常清晰。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM