iOS的typedef和define

263 阅读1分钟

类型定义

1、typedef

  • 作用:给类型起别名(给已知的类型起别名),常用于简化复杂类型,变量类型意义化等

image.png

2、define

  • 作用:文本替换(把出现的替换为定义的)

image.png

typedef和define的区别

  • define 是单纯的文本替换,typedef 是类型替换
    • define属于预编译指令,本身不参与编译
    • typedef属于语句的一种,结尾必须有;
  • define 写在方法/函数中则作用域从写的地方开始有效,直至使用#undef,不写此指令则后面一直有效。typedef 写在方法/函数中则作用域只在此方法/函数中有效
  • typedef是在计算机编程语言中用来为复杂的声明定义简单的别名,它与define有些差异。它本身是一种存储类的关键字,与externmutablestaticregister等关键字不能出现在同一个表达式中。

image.png