¿Es posible ver el código exacto generado por @synthesize?Visualización del código generado por @synthesize para getter/setter
Respuesta
Usted puede leer la fuente del compilador Clang para ver el código C++ que genera los métodos getter y setter:
http://llvm.org/svn/llvm-project/cfe/trunk/lib/CodeGen/CGObjC.cpp
es bastante críptico, pero esa es la forma más precisa de ver el código generado.
También puede consultar las implementaciones objc_getProperty y objc_setProperty en Apple's runtime implementation. Si bien no es literalmente lo mismo que el código que se genera, este código es mucho más fácil de leer y proporciona una clara indicación de lo que deben hacer un getter y un setter adecuados.
Si "borrar" incluye tener un montón de código muerto en el archivo, entonces sí. Pero tienes razón, las cosas buenas están enterradas allí también. –
Sure it is. Vaya al archivo .m donde tiene @synthesized
la propiedad, luego en el menú Generar, elija "Mostrar código de ensamblaje". El compilador pone convenientemente en cosas como:
.align 4, 0x90
"-[Foo setStr:]":
Leh_func_begin2:
Lfunc_begin2:
....
Y
.align 4, 0x90
"-[Foo answer]":
Leh_func_begin3:
Lfunc_begin3:
....
Oh, que querían Objective-C código? Lo sentimos, esto lo hace el compilador, y el compilador lee Objective-C, pero escribe en ensamblado.
- 1. ¿Por qué todavía necesitamos código generado?
- 2. código generado por wsimport - las mejores prácticas para el embalaje del código
- 3. Visualización del código IL generado a partir de una expresión compilada
- 4. herramienta para ver el código generado por el compilador
- 5. Suprime la advertencia para código C# generado
- 6. ¿Puedo eliminar dependencias ANTLR del código generado?
- 7. Visualización del algoritmo para C#
- 8. soap ui código generado
- 9. @property @synthesize
- 10. Parámetros del método generado por Eclipse final
- 11. qmake reglas para el código generado
- 12. @property y @synthesize
- 13. ¿Es posible tener el guión Haml HTML generado por un asistente de visualización en Rails?
- 14. ¿Cómo puedo embellecer el código de Perl generado por Perl?
- 15. Pasando la función JS al código generado por Emscripten
- 16. ¿Por qué el código IL generado comienza con un Nop?
- 17. programación formato generado Código CodeDom
- 18. qué significa "suprimir los resultados del código generado"
- 19. Uso del código generado por Py ++ como una extensión de Python
- 20. Visualización de código en C++
- 21. ¿Cómo ver "código HTML generado" en Firefox?
- 22. ¿Cambiar código generado o usar herencia?
- 23. ¿Admitirá GNUstep @property y @synthesize?
- 24. ¿Cuáles son algunos consejos para optimizar el código de ensamblado generado por un compilador?
- 25. Use DLR para ejecutar el código generado con CompileAssemblyFromSource?
- 26. ¿La mejor práctica para editar el código generado automáticamente MVC3?
- 27. ¿Cómo suprimir el análisis de código en el código generado?
- 28. software de visualización de código de espagueti?
- 29. Código HTML generado automáticamente por Paypal: ¿por qué la imagen de 1 píxel?
- 30. Visualización del cumplimiento W3C
¿Puedo preguntarle por qué quiere esto? –
Soitanly. Pensé que podría aprender algo al ver ese código. – cfischer
Relacionados: http://stackoverflow.com/a/589348/412916 http://stackoverflow.com/questions/917884/ http://cocoawithlove.com/2009/10/memory-and-thread-safe-custom- property.html – Jano