[問題] 舊程式 加入 ARC 功能

看板MacDev作者 (尋找奶昔)時間12年前 (2012/12/07 22:16), 編輯推噓0(008)
留言8則, 2人參與, 最新討論串1/2 (看更多)
各位大大好 目前我有一支舊的程式 當初寫的人都是用 alloc 的方式去做任何事情 像是 ABCLabel.text = [[NSString alloc] initWithString:@"XXX"]; 但是之後都沒有在 release 那個 NSString 所以會造成 memory leak 對嘛? 不知道我想的對不對 因為常常會造成 crash 我現在只要在 build 的時候勾選 ARC Yes 這樣就行了嘛 還是也需要手動去加入 autorelease@@? 如 ABCLabel.text = [[[NSString alloc] initWithString:@"XXX"] autorelease]; 感謝各位大大的收看... -- 走召石更白勺口拉 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.2.251 ※ 編輯: sorkayi 來自: 122.117.2.251 (12/07 23:04)

12/07 23:23, , 1F
請愛用[NSString stringWithForma:@"XXX"]
12/07 23:23, 1F

12/07 23:24, , 2F
^Format
12/07 23:24, 2F
有 我已經開始在修了 ※ 編輯: sorkayi 來自: 122.117.2.251 (12/07 23:31)

12/07 23:48, , 3F
Xcode 有個 Convert to Objective-C ARC 的工具, 如果他
12/07 23:48, 3F

12/07 23:48, , 4F
真的從頭到尾都只有 ini 沒有 release 的話套起來應該超
12/07 23:48, 4F

12/07 23:48, , 5F
快, 你加了 autorelease 轉換的時候要修的地方還更多XD
12/07 23:48, 5F

12/08 00:31, , 6F
不要太期待ARC,因為它什麼時候被釋放你都不知道
12/08 00:31, 6F
剛剛已經有用那個工具轉換了 不過在 addSubView 後 ibaction 都不能用了 才發現 viewcontroller 被 auto release.... ※ 編輯: sorkayi 來自: 122.117.2.251 (12/08 01:09)

12/08 01:37, , 7F
所以原作者寫了 [self addSubview:viewController.view];
12/08 01:37, 7F

12/08 01:39, , 8F
這種東西...OMG HEE Z DOING EVERYTHING WRONGZ
12/08 01:39, 8F
u 大 我不懂你的意思 這個寫法是 A_ViewController 中 寫 B_ViewController* b = [[B_ViewController all] initWithNib......]; 然後 [self.view addSubView b.view]; 你的意思是說這樣寫不好嘛@@ ※ 編輯: sorkayi 來自: 36.239.202.219 (12/08 14:00)
文章代碼(AID): #1GmVekvc (MacDev)
文章代碼(AID): #1GmVekvc (MacDev)