你好,我想知道如果有人可以給我一些關於內存管理的建議。這應該是autoreleased?還是有辦法手動做到這一點?
我有以下幾點:
-(NSMutableArray*)addAllObjectesInbetween:(NSMutableArray*)betweenTheTwo{
NSMutableArray* toReturn = [betweenTheTwo mutableCopy];
[toReturn insertObject:@"oneObject" atIndex:1];
return toReturn;
}
現在我知道,因爲我想提出一個mutableCopy,我必須釋放toReturn
,但我不知道該怎麼做,因爲它正在恢復到不同的功能。我不想釋放它是因爲它被髮送,但如果我嘗試釋放它後,它只是不會被調用。所以我想在mutableCopy
上加autorelease
,但我不確定這是否是最好的做法......有人可以幫我一把嗎?謝謝!
看來,如果我添加'[toReturn autorelease];'它打破了......我想我需要做更多的調查。有什麼想法嗎? – 2011-12-18 20:14:22
@JamesDunay:那麼別的東西是錯的。你應該像sidyll推薦的那樣調用autorelease。嘗試在您的應用上運行「產品 - >分析」,看看它是否會爲您提供周圍代碼中的任何內存問題。 – 2011-12-19 00:16:44