2013-09-02 7 views
13

Ich EXC_BAD_ACCESS immer bekommen, so aussehen ich zu sehen, welche Variable zu NULL zeigt, und alles, was ich sehe, dass einer meiner Variablen (manchmal mehrere)Was bedeutet <parent ist NULL> im Xcode-lldb-Debugger?

ist NULL

< Elternteil>

daneben. Das Problem ist, dass ich nicht wirklich weiß, was das bedeutet, und ich kann nicht scheinen, irgendetwas von einer Google Suche oder irgendetwas darüber zu finden. Ich denke, das bedeutet, dass das die NULL Variable ist, die ich versuche zuzugreifen, aber dann macht die Nachricht nicht viel Sinn. Jeder weiß ein bisschen mehr darüber?

+0

Ist diese Variable Objective-C-Klasse oder C++ - Klasse oder -Struktur? –

Antwort

10

Es bedeutet einfach, dass die Variable ein Zeiger auf ein Objekt ist und der Zeiger NULL ist.

Vom LLDB source:

if (addr == LLDB_INVALID_ADDRESS) 
{ 
    m_error.SetErrorString ("parent address is invalid."); 
} 
else if (addr == 0) 
{ 
    m_error.SetErrorString ("parent is NULL"); 
} 
else 
... 
+3

Das ist eine perfekte Erklärung. Vielen Dank! – LunaCodeGirl

1

Ich hatte zu "Eltern ist NULL", wenn i Objektbeschreibung meiner Array gedruckt

Dank trojanfoe Antwort, konnte ich sehen, dass ich zurückkehrte meine Array falsch. Ich habe einfach geändert:

- (NSMutableArray *)allItems { 
    return self.allItems; 
} 

zu:

- (NSMutableArray *)allItems { 
    return _allItems; 
} 

hoffe, das hilft!