#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

}

你可能感兴趣的:(#ifdef,#else,#endif,#if的用法)