iPhone開發(fā) 內(nèi)存管理需要注意事項(xiàng)
iPhone開發(fā) 內(nèi)存管理需要注意事項(xiàng)是本文要介紹的內(nèi)容,內(nèi)存管理可以說是 iPhone 開發(fā)中最重要也最令人頭疼的關(guān)鍵點(diǎn)。CocoaChina 版主lvyile總結(jié)了內(nèi)存管理中最應(yīng)注意的事項(xiàng),分別是: 通過分配或復(fù)制創(chuàng)建的對(duì)象保持計(jì)數(shù)為 1; 假設(shè)任何別的。
1、通過分配或復(fù)制創(chuàng)建的對(duì)象保持計(jì)數(shù)為 1;
2、假設(shè)任何別的方法獲取的對(duì)象保持計(jì)數(shù)為1, 而且在自動(dòng)釋放池中,要想在當(dāng)前執(zhí)行范圍外使用該對(duì)象,就必須保持它;
3、向集合添加對(duì)象時(shí)它就被保持,從集合移走對(duì)象時(shí)就被釋放。釋放集合對(duì)象(如 NSArray )會(huì)釋放該集合當(dāng)中所有的對(duì)象;
4、確保有多少個(gè) alloc, copy, mutableCopy 或 retain 消息就有多少 release 或 autorelease 消息發(fā)送給該對(duì)象。換句話說,確保您代碼的平衡;
5、在訪問方法設(shè)置屬性時(shí)先保持,再釋放;
6、在程序中用 @"..." 結(jié)構(gòu)創(chuàng)建的 NSString 對(duì)象是有效常量,向它們發(fā)送 retain 或者 release 消息沒有用;
7、使用便利構(gòu)造方法創(chuàng)建的對(duì)象(如 NSString 的 stringWithFormat )可以被認(rèn)為會(huì)自動(dòng)釋放;
8、在使用你自己的參數(shù)實(shí)例時(shí),需要實(shí)現(xiàn) -dealloc 方法來釋放。
小結(jié):iPhone開發(fā)中內(nèi)存管理注意事項(xiàng)的內(nèi)容介紹完了,希望本文對(duì)你有所幫助。
本文來自:http://www.cocoachina.com/iphonedev/sdk/2010/1227/2506.html