2010-04-05 115 views
0

我剛剛開始使用可可。所以請原諒這個愚蠢的問題,但我還不能完全理解內存管理的某些方面。iPhone:新手內存管理問題

在我的類的接口中,我聲明一個對象爲CEMyObjectclass *myObject;。我不會在類的init初始階段分配或初始化obect。但是我確實有一個方法叫做myObject = [[CEMyObjectclass alloc] initWithImage:someImage];。那麼最終是否會耗盡內存,或者每次調用此方法時myObject都會被新實例覆蓋?

謝謝!

回答

1

你應該最終用完。

請記住,myObject只是一個指向內存塊的指針。指針myObject將指向新分配的對象,並且不會引用舊對象。因此,你將無法釋放它的內存(但對象仍然在)。

一般來說,如果你有某種東西(或者retain它),你有責任在後面的某個地方將此信息與release匹配。

+0

垃圾收集器不會清理它? – Bryan 2010-04-05 19:52:48

+0

據我所知,iPhone上沒有垃圾回收器。 – vicvicvic 2010-04-05 20:02:31

+0

當應用程序完全退出時......「泄漏的內存」仍然泄漏? – Bonnie 2010-04-06 00:38:49