iPhone Debugging: Variablen sind nicht auf dem neuesten Stand?
Frage
Ich habe erst kürzlich den Debugger ausgiebig angewendet, daher bin ich mir nicht sicher, ob dies eine Einschränkung ist.
Wenn ich auf dem iPhone debuggen, sind die Variablen nicht auf dem neuesten Stand, es sei denn, ich sehe es ausdrücklich (Strg+klicken -> Variable als Ausdruck anzeigen). Gibt es eine Möglichkeit, tatsächliche Variablen anzuzeigen, ohne explizit anzusehen?
Lösung
Können Sie Ihre Frage klären? Sie sollten nur Daten ansehen, während das Programm gestoppt wird. Die Untersuchung von Daten während des Laufens, wenn es überhaupt funktioniert, ist viel weniger nützlich. Stellen Sie sicher, dass Sie einen Haltepunkt festlegen und dann Daten untersuchen, sobald Sie den Haltepunkt erreicht haben.
Eine Alternative zur Verwendung von Xcode-integrierten Debugging-Funktionen besteht darin, die GDB-Konsole zu verwenden. Geben Sie ⌘-Shift-R ein oder wählen Sie "Debugging Console" aus dem Menü, um die Konsole zu öffnen. Dann können Sie Befehle eingeben wie:
# View a variable
print var
# View this object's member variable
print self->memberVar
# Ask an Objective-C object to print itself:
print-object self
Du solltest benutzen print
mit primitiven Typen (int
, char*
, usw.) und POD -Typen (Strukturen); du solltest benutzen print-object
mit objektiv-C-Objekten (NSString
, etc.). Weitere Informationen zu print
und print-object
, Typ
help print
help print-object
Sie können auch die Abkürzungen verwenden p
und po
zum print
und print-object
beziehungsweise.