我創建了一個將對象映射到整數的NSDictionary,並且由於NSDictionaries除了對象之外不處理任何對象,所以我必須用[NSNumber numberWithInt:30]來包裝NSNumber對象中的每個整數,或者你有什麼。我不清楚的是我是否需要釋放所有我創建的NSNumber對象。我實際上並沒有爲它們分配空間,所以它們必須位於autorelease池中,但是我可以確定NSDictionary對象正在保留並正確釋放它們嗎?比方說,我設置我是否需要將NSNumbers自己添加到NSDictionary中?
NSDictionary * myDict = [[NSDictionary alloc] initWithObjectsAndKeys: objectOne, [NSNumber numberWithInt: 30], nil];
,我正確釋放的NSDictionary時,我用它做(因爲我上午 alloc'ing我自己的代碼中對於空間)。
numberWithInt是一種方便的方法(即在類上調用它)。因此,由於您沒有調用稱爲initXXX的方法,因此根據內存管理規則,該對象將返回自動釋放。 – Oli
正確。但你需要檢查是否有必要手動釋放它或使用自動釋放機制 - 後者適用於這種情況 – Wizz