最近琢磨Objective-C的引用計(jì)數(shù)。老是看到下面一段話:
成都創(chuàng)新互聯(lián)成立十年來,這條路我們正越走越好,積累了技術(shù)與客戶資源,形成了良好的口碑。為客戶提供做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、網(wǎng)站策劃、網(wǎng)頁設(shè)計(jì)、空間域名、網(wǎng)絡(luò)營銷、VI設(shè)計(jì)、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。網(wǎng)站是否美觀、功能強(qiáng)大、用戶體驗(yàn)好、性價(jià)比高、打開快等等,這些對(duì)于網(wǎng)站建設(shè)都非常重要,成都創(chuàng)新互聯(lián)通過對(duì)建站技術(shù)性的掌握、對(duì)創(chuàng)意設(shè)計(jì)的研究為客戶提供一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進(jìn)步。
使用以下名稱開頭的方法名意味著自己生成的對(duì)象只有自己持有:
alloc
new
copy
mutableCopy
這個(gè)規(guī)定是約定俗成的呢還是推薦使用的呢?如果不遵循,會(huì)產(chǎn)生error和warning嗎?
- (void)viewDidLoad
{
NSObject *obj = [selfallocObject];
[objrelease];
NSObject *obj2 = [selfgetObject];
[obj2release];
}
- (id)allocObject{
NSObject *obj = [[NSObjectalloc]init];
return obj;
}
- (id) getObject{
NSObject *obj = [[NSObjectalloc]init];
return obj;
}
可以觀察到allocObject方法和getObject方法內(nèi)容其實(shí)是一模一樣的,差別僅僅在于一個(gè)名字。
run起來…看看不遵守這個(gè)命名規(guī)則會(huì)有什么問題。
等等…程序居然成功跑起來了。也沒有任何warning啊什么的…
所以這個(gè)命名規(guī)則就是給人看的,編譯器完全無所謂嗎……啊不對(duì),等等,讓我再試試Analyze程序看看有沒什么異常。
嗯…有個(gè)提示,提示:違反了內(nèi)存管理中的命名規(guī)則。
結(jié)論:好好遵守命名規(guī)則…(有誰能告訴我如果不遵守會(huì)給程序帶來什么問題嗎?我只找到了analyze會(huì)提示遵守規(guī)則……)
文章標(biāo)題:[iOS開發(fā)]內(nèi)存管理中的命名規(guī)則
URL地址:
http://weahome.cn/article/iiijej.html