Quiero hacer una pregunta sobre el objetivo C. Cuando estudio la biblioteca desde el sitio web para desarrolladores de Apple. Siempre veo que hay una subclase llamada "mutable". Por ejemplo, NSArray y NSMutableArray. ¿Qué significa sobre esta palabra? ¿Hay algún significado especial? ¿Alguien me puede decir? Gracias.¿Cuál es el significado de "mutable" en el objetivo C?
Respuesta
Esto significa que puede cambiar sus valores. Si mira los documentos de NSMutableArray, verá que define métodos adicionales como -addObject:
. NSArray por sí mismo no tiene estos (y por lo tanto puede ser más eficiente/tomar menos memoria en la implementación).
También tenga en cuenta, si se llama a [myMutableArray copy]
obtendrá una copia no mutable de la misma (que debe release0 más tarde. Y del mismo modo que hay -mutableCopy
.
mutable significa que puede cambiarlo. Mira la diferencia entre addObject en NSMutableArray y arrayByAddingObject en NSArray
Desde el Objective-C Beginner's Guide se afirma que la respuesta a su pregunta específica:.
Hay dos tipos de matrices (y de generalmente la mayoría de los datos orientados a las clases Foundation ) NSArray y NSMutableArray. Como su nombre indica, Mutable es changable, NSArray no lo es. Esto significa que usted puede hacer un NSArray pero una vez que tiene no puede cambiar la longitud.
Esta nota técnica implica también puede cambio la longitud de una matriz mutable después de la serie ha sido creada.
En general mutability stems from these meanings. Esto ayudará a proporcionar una comprensión más amplia para cuando la encuentre en otro lugar.
- 1. ¿Cuál es el significado de #define en el objetivo C?
- 2. ¿Cuál es el significado de '==' en C?
- 3. ¿Cuál es el significado de []
- 4. ¿Cuál es el significado de ∃?
- 5. Cómo inicializar una matriz mutable vacía en el Objetivo C
- 6. ¿Cuál es el significado de `_t` de` size_t` en C?
- 7. ¿Cuál es el significado de #line en lenguaje C?
- 8. ¿Cuál es el significado de (int &) la conversión en C++
- 9. ¿Cuál es el significado de NULL! = Valor en C++?
- 10. ¿Cuál es el significado de "programación genérica" en C++?
- 11. ¿Cuál es el significado de @_ en Perl?
- 12. ¿Cuál es el significado de $$ en Ruby?
- 13. ¿Cuál es el significado de '_' en python?
- 14. ¿Cuál es el significado de id?
- 15. ¿Cuál es el significado de CTOR?
- 16. ¿Cuál es el significado del término "función libre" en C++?
- 17. ¿Cuál es el significado del método Thread.Join en C#?
- 18. ¿Cuál es el significado de la directiva {$ C PRELOAD}?
- 19. ¿Cuál es el significado de este error C++ std :: length_error
- 20. ¿Cuál es el significado de ".. ::." Cª#?
- 21. ¿Cuál es el significado de svg: svg?
- 22. ¿Cuál es el significado SQL de 0x5E5B7D7E?
- 23. ¿Cuál es el significado de ORM?
- 24. ¿Cuál es el significado de erb?
- 25. ¿Cuál es el significado de 'sourceSets.all *'
- 26. ¿Cuál es el significado de Transaction?
- 27. ¿Cuál es el significado de esta sintaxis?
- 28. ¿Cuál es el significado de "unidad Hero"?
- 29. ¿Cuál es el significado de este typedef?
- 30. ¿Cuál es el significado de android.location.LocationManager.PASSIVE_PROVIDER?