我想實現的countByEnumeratingWithState
方法在我的Objective-C類(比如MyClass
在這種方法我做一個Fastenumeration實施
MyOtherClass *cl = [[MyOtherClass alloc] init];
buffer[count++] = cl;
我之所以要在飛行中分配對象是因爲這些對象存儲「在別處」 然而,使用從應用這種方法時,它會崩潰。
for (const MyOtherClass *cl in myClassObj){
NSLog(@"obj: %@", cl.description);
}
這樣做的原因是最有可能的是ARC扔掉我的MyOtherClass對象在countByEnumeratingWithState中,因爲緩衝區是'未保留的'。 如何確保MyOtherClass對象'保留'?
更多相關信息:
- 線#4:TID = 0x5ca941,0x0000000101a4cf8b libobjc.A.dylib
objc_msgSend + 11, stop reason = EXC_BAD_ACCESS (code=EXC_I386_GPFLT) frame #0: 0x0000000101a4cf8b libobjc.A.dylib
objc_msgSend + 11
請發佈stacktrace。 – trojanfoe
讓我們看看緩衝區聲明。 –