2011-02-01 79 views
1

我是Objective-C iPhone/iPad編程的新手。如何在iPhone/iPad的應用程序中正確保留和釋放使用

我有通過釋放或保留對象的內存管理問題。 我正在做一個包含多個視圖控制器切換視圖的應用程序。

最使用的對象被聲明爲IBOutlets,我想知道如何以及何時應該使用的保留和釋放不具有記憶問題和結束觀察正確的應用。

這將是有趣對我來說,切換到另一個視圖控制器或whem我沒有使用次數多的對象時釋放它們。

有人可以解釋我如何以及何時必須使用保留和釋放?我已經閱讀了Apple的文檔,但我認爲這有點令人困惑。我必須在dealloc或didReceiveMemoryWarning中放置它,但不能解決我的問題。

如果我拼寫錯誤,我很抱歉。 非常感謝。

回答

1

在項目運行與儀器儀表工具或簡單的運行按shift +指令+ A在Xcode應用程序應用發現泄漏。

您使用的alloc和init每個對象應釋放其他它會導致內存泄漏。 聲明.h文件中的每個對象並設置該屬性並在dealloc方法中釋放該obj。如果你具有u從頁面左邊後保留目前的狀態

固定僅需要。

+0

短暫但很好的解釋和理解,謝謝!我會試着看看它是如何工作的。 – karse23 2011-02-01 09:59:21

0

如果您將copymutablecopyretainalloc發送給對象,那麼當您完成該操作時,您有責任釋放該對象。

NSString *allocedString = [[NSString alloc] initWithString:@"world"]; 
NSString *myString = [NSString stringWithFormat:@"Hello%@", allocedString]; 

[allocedString release], allocedString = nil; 

你是負責釋放allocedStringmyString(使用autorelease inernally)

相關問題