Contabilidad de referencia automática

En Objective-C y programación Swift, la Contabilidad de Referencia Automática (ARC por sus siglas en inglés) es una característica de gestión de memoria que transfiere la responsabilidad de mantener el conteo de referencia de un objeto del programador al compilador.

En Objective-C tradicional, el programador envía mensajes retain y release a los objetos para, respectivamente, incrementar o decrementar su contador de referencias durante la ejecución del programa.

Este contador permite que la memoria usada por éstos sea liberada cuando su número de referencias llega a cero.

[1]​ Al utilizar ARC, esto es gestionado por el compilador de forma automática, examinando el código fuente y añadiendo los mensajes de retain y release en el código compilado.

[2]​