XLog() – Das bessere NSLog()

Um seinen Code-Ablauf  besser beobachten zu können wird üblicherweise NSLog genutzt. Problematisch ist es, die Log’s für das Releas zu deaktivieren. Hierfür habe ich ein nettes preprocessor macro gefunden. Zum deaktivieren der Logs, welche mittels XLog(@”"); gesetzt werden, muss lediglich #define DEBUG 1 auskommentiert werden.

Großer Vorteil von XLog ist auch, dass es meldet, aus welcher Methode es ausgerufen wurde. Um beispielsweise zu testen, ob eine Methode aufgerufen wurde reicht folgendes aus:

 -(void)test { XLog(@""); } 

 

 Datei: AppName_Prefix.pch [ . . . ]  
#define DEBUG 1
//#define RELEASE 1

#ifdef DEBUG 

// Debug definitions
#define DEBUG_MODE
#define XLog(fmt, ...) NSLog(@"%s line:%d " fmt, __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__) 

#else 

#ifndef RELEASE
#error DEBUG or RELEASE need to be #defined
#endif 

// Release definitions
#define RELEASE_MODE
#define XLog(...) 

#endif
This entry was posted in iPhone & co., Programmierung and tagged . Bookmark the permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>