当前位置:   article > 正文

iOS:#ifdef的使用_#ifdef __ios__

#ifdef __ios__

此方法能用好,可以在demo中起到至关重要的作用,此处有三种情况

一、

  1. #ifdef XXXX
  2.   //...demo块1...
  3. #else
  4.   //...demo块2...
  5. #endif

此处实现机制是:如果 xxxx编译过,即实现demo块1,否则为demo块2,#endif为结束。

  1. #ifndef _XXXX
  2.   //...程序段1...
  3. #else
  4.   //...程序段2...
  5. #endif

此处实现机制是:当xxxx未编译过时实现demo块1,否则实现demo块2,与上面相反

实现机制方法一般是在pch文件里定义好,即:

#define XXXX

我的使用情景是:我的项目为双端,即客户端a和b,某些通用类的接口不一样,但是其他处理方式一模一样,所以使用此方法可以方便的进行判断,即在客户端a中的pch中定义xxxx,然后即可。

但是Xcode6之后苹果就不建议使用pch了。


二、

  1. #define NUM
  2.   .............
  3.   .............
  4.   .............
  5. #ifdef NUM
  6.    //……demo块1……
  7. #else
  8. //……demo块2……
  9. #endif

即: 宏定义一个NUM,如果NUM有定义,则执行demo块1,否则执行demo块2,#endif为结束

我的使用情景是:根据在前一页面的选择不同,push到下一界面视图展现前后顺序不一样,所以我直接传值过去,判断此值内容然后根据内容是否给NUM定义。

三、

  1. #if integerValue(常量)
  2.   //...demo块1...
  3. #else
  4.   //...demo块2...
  5. #endif

此处实现机制是: 如果integerValue有值(非零非空),则执行demo块1,否则执行demo块2

我的使用情景:在demo块1中写入测试demo,使用时给integerValue赋值,不用为nil或0


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/223938
推荐阅读
相关标签
  

闽ICP备14008679号