2012-06-25 11 views

Respuesta

43

Finalmente lo descubrí por mi cuenta. help expr ejecutar en LLDB y verá: variables definidas

usuario: Puede definir sus propias variables por conveniencia o para ser utilizado en expresiones posteriores. Los defina de la misma forma que definiría variables en C. Si el primer carácter de su variable definida por el usuario es $, el valor de la variable estará disponible en futuras expresiones , de lo contrario solo estará disponible en la expresión actual .

Así que expr int $foo = 5 es lo que quiero.

+0

¿Alguien sabe si hay una función para enumerar las variables definidas de esta manera durante una sesión? Eso sería muy útil. Algo así como 'expr list' ... –

3

sólo tiene que utilizar el formulario:

(lldb) expr var 

de sus tutorial:

(lldb) expr self 
$0 = (SKTGraphicView *) 0x0000000100135430 
(lldb) expr self = 0x00 
$1 = (SKTGraphicView *) 0x0000000000000000 

También puede llamar a funciones:

(lldb) expr (int) printf ("I have a pointer 0x%llx.\n", self) 
$2 = (int) 22 
I have a pointer 0x0. 
(lldb) expr self = $0 
$4 = (SKTGraphicView *) 0x0000000100135430 
19

Luché con esto hoy. Esto es lo que parece que para hacer frente a las variables de Objective-C en LLDB:

expr UIApplication *$app = (UIApplication *)[UIApplication sharedApplication] 
expr UIWindow *$keyWindow = (UIWindow *)[$app keyWindow] 

etc. He encontrado LLDB funciona mejor si no lo hace nido ninguna llamada, y le dará explícitamente un tipo de retorno de cada llamada .

Todavía recibo un error de segmentación cuando intento hacer que initWithFrame: trabaje en una UIView más adelante. :/

Cuestiones relacionadas