guidelines collection buttons bar iphone xcode watchpoint

iphone - collection - ¿Seguimiento de la variable o cambio de memoria en Xcode?



navigation bar ios (4)

Puede utilizar puntos de control de hardware .


p &my_var obtener la dirección de la variable que desea rastrear (escriba p &my_var en el indicador de gdb).

Se imprimirá algo como 0x12345678 .

  • Con gdb: escriba watch *(int *)0x12345678 .

  • Con lldb: watch set expression (int *)0x12345678 (o wse (int *)0x12345678 )

Esto supone que su variable es un int . Creará un punto de observación de hardware en esta dirección.


Espero que esto ayude.

¿Hay alguna forma de rastrear cambios de variables o cambios de memoria en Xcode? Estoy buscando una funcionalidad como el punto de interrupción de datos de Visual Studio.

Quiero saber dónde se está cambiando el marco de vista de mi objeto. Quiero establecer un punto de interrupción en una variable miembro y ejecutarlo. Entonces podría determinar dónde ha cambiado.



Sí.

Bajo el menú Ejecutar hay "Depurador" que proporciona una interfaz visual para gdb.

Además, hay un botón de punto de interrupción junto al botón Construir y Ejecutar. Puede hacer clic en eso y administrar sus puntos de interrupción en Ejecutar> Administrar puntos de interrupción.


Xcode usa gdb (o lldb , pero esa es otra historia) para implementar su funcionalidad de depuración. gdb tiene la capacidad de establecer puntos de control de hardware y, por lo tanto, Xcode también.

This es una página útil para la depuración genérica de errores de memoria. La ventana de la consola de depuración de Xcode es en realidad solo una shell gdb , puede escribir los comandos a su gusto. El siempre útil Quinn Taylor explica cómo hacerlo en this publicación relacionada.

Si prefiere evitar interactuar con gdb directamente, puede hacer clic con el botón derecho en una variable en la ventana de depuración de Xcode y seleccionar "Ver variable". Xcode le avisará cada vez que se cambie el valor de su variable.