Es gibt zwei Funktionen, die Sie können se.
- (NSString*)description
Dies wird angezeigt, wenn Sie Ihr Objekt als, I.E. ein Parameter für NSLog
. Die andere Beschreibung Funktion ist:
- (NSString*)debugDescription
Diese aufgerufen wird, wenn Sie po anInstanceOfYourClass
im Debug-Befehlsfenster tun. Wenn Ihre Klasse keine debugDescription
Funktion hat, wird nur description
aufgerufen.
Beachten Sie, dass die Basisklasse NSObject
description
implementiert, aber es ist ziemlich nackt: es zeigt nur die Adresse des Objekts. Deshalb empfehle ich, dass Sie description
in jeder Klasse implementieren, von der Sie Informationen erhalten möchten, insbesondere wenn Sie in Ihrem Code die Methode description
verwenden. Wenn Sie description
in Ihrem Code verwenden, schlage ich vor, dass Sie auch debugDescription
implementieren und auch debugDescription
ausführlicher machen.
Hinweis: Wenn Sie CoreData verwenden, ist die 'description' Eigenschaft [reserviert] (http://stackoverflow.com/questions/4717519/why-canti-i-use-) description-as-a-attribute-name-für-ein-core-daten-entity) ... und liefert nützliche Debugging-Informationen! In diesem Fall müssen Sie Ihren eigenen eindeutigen Methodennamen erstellen. – Nuthatch
Ist 'debugDescription' auch reserviert? Obwohl ich denke, 'DebugDescription' soll von einem Debugger wie LLDB verwendet werden. – MaddTheSane