'release' n'est pas disponible: non disponible en mode de comptage automatique des references

J'apprends à programmer sur le operating system iOS en utilisant le livre "Head first iPhone and iPad development" (deuxième édition).

Capture d'écran

Lorsque j'essaie de comstackr le code à partir du livre, j'obtiens l'erreur que le mot-key release utilisation n'est pas autorisé en mode comptage de references.

Dois-je explicitement libérer la memory dans ce cas? Si oui – comment?

On dirait que votre livre est antérieur à ARC .

Vous pouvez développer une application avec le même code si vous désactivez ARC dans les parameters du projet:

Comment désactiver ARC

Mais … ARC est sorti depuis un moment et iOS change rapidement. Si le livre ne mentionne pas ARC, il est probable qu'il cible une version du SDK iOS inférieure à 5.0, ce qui n'est pas forcément la meilleure façon d'apprendre le développement iOS ces jours-ci.

Vous pouvez grossièrement traduire vers un environnement ARC en supprimant simplement [super dealloc] , en retain , en autorelease et en autorelease partir du code que vous voyez. Mais il est utile de comprendre pourquoi ils sont là en premier lieu et pourquoi ils ne sont plus nécessaires avec ARC.

Vous avez activé Automatic Reference Counting (ARC) dans votre projet. Cela signifie que vous pouvez ignorer les commands dealloc , release et autorelease . 🙂