1
我的蘋果文檔閱讀copyWithZone:copyWithZone返回值所有權和保留計數
「返回的對象是隱含由發送者,誰是負責釋放它保留」。
所以,如果我這樣寫:
- (id)copyWithZone:(NSZone *)zone {
MyObject* obj = [[[[self class] allocWithZone:zone] init] autorelease];
[obj fillTheObj];
return obj;
}
我打電話:
MyStuff* obj = [varobj copy];
將obj
被保留?如果我沒有設置autorelease,那麼保留計數如何?
@Matthew Frederick:好的,所以沒有像蘋果文檔說的那樣保留IMPLICIT。由於你的代碼,這是明確的嗎? – Oliver 2011-01-08 11:14:11