In the development process, we often need to use the NSLog output some information, and even some development process, you must view the output in the console, experienced programmers through the console output to know the entire data interaction of a process. But a release of the program, with too much nslog output, certainly for app performance, this time we can use a macro definition to deal with, in the development of the use of debug mode, when the release mode is used. In this way, the published app does not do a lot of nslog output inside the program.
The simple code is as follows,
#if defined (DEBUG) | | Defined (_DEBUG) NSLog (@ "test Code"); NSLog (@ "Test Coding"); #endif
If the # if #endif宏定义的意思就是如果定义了DEBUG above, then use nslog output, otherwise this code is directly ignored. Some people will wonder where this debug and _DEBUG come from, this is not to worry, this is from the default settings of Xcode, we can cancel the debug mode, open release mode, as shown below,
Choose Product->scheme->edit Scheme,
You can choose between Debug and release two modes,
Here I chose release, then the default does not define debug, the above code in the # if ... #endif之间的输出NSLog不会执行. This saves the resources of some hardware devices when the program is released.