#ifdef,#else,#endif,#if的用法
#import "ViewController.h"
@interface ViewController ()
@end
//作为初学者到今天才接触到 ifdef,else,endif 的用法,才发现挺实用的.至少在开发中你可以灵活切换debug模式
//此处是定义DEEBUG
#define DEEBUG 1
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self debugIfdef];
[self debugIfndef];
[self debugIf];
}
//如果程序开头有#define DEEBUG这行,碰到下面#ifdef DEEBUG的时候,当然执行第一个NSLog.否则第二个NSLog将被执行.
//我认为用这种可以很方便的开启/关闭整个程序的某项特定功能.
- (void)debugIfdef {
#ifdef DEEBUG
NSLog(@"DEEBUG 已定义");
#else
NSLog(@"DEEBUG 未定义");
#endif
}
//这里正好和上面的相反
- (void)debugIfndef {
#ifndef DEEBUG
NSLog(@"DEEBUG 已定义");
#else
NSLog(@"DEEBUG 未定义");
#endif
}
//这里表示,如果常量为真(非0,随便什么数字,只要不是0)就执行程序段1,否则执行程序段2.
//我认为这种方法可以将测试代码加进来.当需要开启测试的时候,只要将常量变1就好了.而不要测试的时候,只要将常量变0。
- (void)debugIf {
#if DEEBUG
NSLog(@"DEEBUG 已定义");
#else
NSLog(@"DEEBUG 已定义");
#endif
}