C#-----------------------------回收機制中Destroy與null的作用
阿新 • • 發佈:2017-11-04
icon des www ocl 技術 比較 view 情況 它的
view plain copy
print?
關於Object被Destroy之後,該Object的原引用==null的問題
標簽: unityc#繼承對象 2017-01-23 23:32 506人閱讀 評論(0) 收藏 舉報 分類:版權聲明:歡迎轉載,註明出處即可~
由於C#本身有GC機制,當對象的引用為0的時候就會被垃圾回收,對應的引用則會被置為null, 但Unity裏邊,調Destroy刪除一個Object,只是釋放了Unity的資源,而在C#層面,這個Object對應的引用都還在,那麽它便不會被當成垃圾回收掉,所以C#層的資源並沒有釋放,但是拿它的引用跟null做對比確實相等的。代碼跟到Unity Object腳本的實現,Unity裏的MonoBehaver是繼承自Object的,包括所有的Component也都是。跟到Object類之後 發現以下幾句: [csharp]- public static bool operator ==(Object x, Object y);
- public static bool operator !=(Object x, Object y);
C#-----------------------------回收機制中Destroy與null的作用