Estoy declarando una propiedad NSString en una clase y Objective-C se queja de que:NSString ningún atributo 'assign', 'mantener', o 'copia' se especifica
NSString no 'Asignar', ' retener ', o' copiar 'atributo está especificado
Luego, casualmente me deja saber que "asignar se utiliza en su lugar".
Puede alguien explicarme la diferencia entre asignar, conservan y copia en términos de normales de gestión de memoria funciones de C?
conservar - __a incluso si__ alguien [deallocs] el NSString al que está haciendo referencia? ¿O solo funciona si todos los usuarios de esa misma instancia [lanzan]? – bobobobo
@bobobobo - usted debe * nunca * llamar 'dealloc' usted mismo. Deberías * siempre * usar 'release' o' autorelease'. –
Lo que dijo Dave. La razón por la cual sus datos están garantizados es porque usted supone que todos los demás solo utilizan la versión, lo que reduce el recuento de referencias solo por su referencia. Si otras personas, o usted mismo, aprueban el dealloc o liberan un objeto (por lo tanto, no siguen las reglas) ¡sus datos no están garantizados! – bmalicoat