Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint
Share this Page URL
Help

27. Debuggen > 27.6 Über-freigegebene „Zombie“-Objekten finden

27.6 Über-freigegebene „Zombie“-Objekten finden

Im vorigen Abschnitt haben Sie gesehen, wie Sie mit dem Debugger einen Division-durch-Null-Fehler finden und beheben können. Die meisten Abstürze sind aber nicht so offensichtlich. Der weitaus häufigste Grund für einen Absturz ist ein Fehler des Typs EXC_BAD_ ACCESS, der immer von einem Zeigerfehler herrührt, zum Beispiel durch eine vergessene Initialisierung eines Zeigers, der Verwendung eines referenzierten numerischen Werts (statt des Zeigers) als Adresse und so weiter.

Ein ganz einfaches Beispiel ist, einem Zeiger nichts zuzuweisen:

Debugging/Primes/Classes/PathologicalPrimeCounterViewController.m

NSString *nullReferenceString;
NSLog (nullReferenceString);

Da nullReferenceString nie alloziert und zugewiesen wird, ist die Referenz nicht nutzbar, und der erste Versuch, darauf zuzugreifen, führt zu einem Absturz mit dem Fehler EXC_BAD_ACCESS. Glücklicherweise lässt sich das mit dem Debugger sehr leicht herausfinden (siehe Abbildung 27.11).


  

You are currently reading a PREVIEW of this book.

                                                                                        

Get instant access to over
$1 million worth of books and videos.

  

Start a Free Trial