Soluzione # 1:
Basta rimuovere l'istruzione di rilascio. ARC lo gestirà per te.
[imageArray release]; // remove this line
ARC è il conteggio di riferimento automatico. Al contrario del conteggio dei riferimenti manuale.
Ci sono alcuni grandi video di discorsi dal WWDC. Posso fornire il link se desideri guardarli.
In Transitioning to ARC Release Notes, vedere ARC impone nuove regole:
You cannot explicitly invoke dealloc, or implement or invoke retain, release, retainCount, or autorelease.
The prohibition extends to using @selector(retain), @selector(release), and so on.
Soluzione # 2:
Se non si desidera convertire il codice per ARC (ad esempio, non si è scrivendo una nuova applicazione, ma ne stai mantenendo una vecchia/o hai importato così tanto codice che passare a ARC non ne vale la pena) puoi disabilitare ARC.
Disattivazione ARC per i file selezionati Per disabilitare ARC, è possibile utilizzare il flag -fno-objc-arc
compilatore per file specifici. Seleziona il target e vai a Build Phases
->Compile Sources
. Modifica il Compiler Flags
e aggiungi -fno-objc-arc
.
Disattivazione ARC per il progetto
Fonte: How to disable Xcode4.2 Automatic Reference Counting
- Clicca su di voi progetto, l'organizzatore della mano sinistra.
- Seleziona il tuo obiettivo, nella colonna successiva.
- Selezionare la scheda Impostazioni di creazione nella parte superiore.
- Scorri verso il basso fino a "Conteggio di riferimento automatico Objective-C" (potrebbe essere elencato come
- "CLANG_ENABLE_OBJC_ARC" nel gruppo di impostazioni Definito dall'utente) e impostarlo su NO.
È possibile disattivare ARC come la vostra scelta Go [questo link] [1], e provare che. [1]: http://stackoverflow.com/questions/6646052/how-can-i-disable-arc-for-a-single-file-in-a-project?answertab=active# tab-top –
Xcode ha lo strumento "Modifica: Refactor: Converti in Objective-C ARC". –