新手提問
有一個temp類,生成了物體物件A,B,C,D……
有一個list<temp> space這樣的容器,
裝入了上述生成的ABCDRFG等等等
一個新的temp物件 newA = space[i],
運氣很好,newA 參考了。A
問題來了,我現在想要將A從space這個容器中洗掉
同時把newA置空,但是因為我不知道i是多少,不可能直接透過Space去洗掉A,我也不能直接對A進行操作
這樣的情況下,跟A也直接聯系的物件就是newA
我該如何透過newA做到
1.將A從space容器里面銷毀?
uj5u.com熱心網友回復:
???space.Remove(newA);
uj5u.com熱心網友回復:
space.Remove(newA)newA=null
等一會 A就會被回收了
uj5u.com熱心網友回復:
會自動銷毀,只需要手動移除即可。對于應用型別來說,=賦值的就是參考,把newA移除,A對于space[i]的參考也不存在了。uj5u.com熱心網友回復:
銷毀物件并不能自動從space中移除所以做法如下:
newA=null;//導致space[i]指向的內容也是null
回圈判斷 space如果為null 就移除
int i=0;
for(i;i<space.Length;i++)
{
if(space[i]==null)
{
break;
}
}
space.Remove(i);
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/126035.html
標籤:C#
