美文网首页
iOS 开发中的 #define

iOS 开发中的 #define

作者: NapoleonY | 来源:发表于2020-11-10 15:17 被阅读0次

基本使用

  • #define PI 3.14

define 函数

#define SQUARE(x) ( (x) * (x) )

此时, y = SQUARE(v + 1); 等价于 y = ( (v + 1) * (v + 1) );

注意括号问题

多个参数的宏方法

#define Array(FIRST, ...) [NSArray arrayWithObjects: FIRST, ##__VA_ARGS__, nil]

#算符以及 ##算符

#算符可产生一个 C-语言 格式的字符串
#define Str(x) #x
#define Str(x) "aaa"#x Str(1)表示字符串"aaa1"

##算符可以用来连接两段字符串,也可用来生成符合的变量名

常用的宏

  1. 表示在模拟器中
#if TARGET_IPHONE_SIMULATOR
#endif
  1. 可以在项目中 Build Settings Preprocessor Macros 设置预编译宏,然后可以根据不同的 target 跑不同的代码了
#if defined(ABC) // 表示是否宏定义了 ABC,不管 ABC值是多少
#endif

// 或者
#if ABC // 表示宏定义了 ABC,并且 ABC 值不为 0
#endif

参考

  1. 《iOS三问》--#define用法大全

相关文章

网友评论

      本文标题:iOS 开发中的 #define

      本文链接:https://www.haomeiwen.com/subject/pcrjbktx.html