0
在此Apple代碼中:http://developer.apple.com/library/ios/#qa/qa1702/_index.html蘋果代碼缺少發佈?
我可以看到在init方法開始時分配的會話未被釋放。
爲什麼?有這個理由嗎?
在此Apple代碼中:http://developer.apple.com/library/ios/#qa/qa1702/_index.html蘋果代碼缺少發佈?
我可以看到在init方法開始時分配的會話未被釋放。
爲什麼?有這個理由嗎?
一對夫婦可能注意的原因是:
autorelease
打過去了。init
方法末尾獲得session
的伊娃被宣佈爲@property (assign)
,所以他們故意想保留它現在。如果我沒有記錯,這是不好的做法 - 他們應該有autorelease
d會議並宣佈@property (retain)
。release
session
以後。不是嚴格的不良練習,但肯定會令人困惑和難以閱讀,並且可能會在稍後(當某人失去跟蹤retain
- release
餘額時)導致維護錯誤。無論如何,你說得對,因爲它與良好的內存管理實踐有些不一致。然而,很難說清楚,是否有明確的理由沒有公佈。