标签: macro

3 篇文章

最简特性开关
作者:xiaobo 参考:https://martinfowler.com/articles/feature-toggles.html 什么是特性开关 定义:不改变代码,实现系统行为的修改。特性开关并不是什么新的技术,可能你已经使用过很多次了,例如 C 语言的预编译宏: 还比如,业务开发惯用的 A/B testing,其实都属于特性开关: 特性开关…
图解 @weakify 与 @strongify 宏
之前写过一篇 C 语言宏定义的方方面面,最近研究了一下 ReactiveCocoa 提供的宏 weakify 与 strongify ,让我对宏的写法有了更多的认识,原来宏还有这么多好玩的地方。 一:weakify 的最终展开 我们可以先用 Xcode 的预处理功能,展开 @weakify(self) ,看看宏的最终展开是什么: 最终展开形式中的 …
宏定义的方方面面
宏作为 C 语言强大的预处理特性,在 C 系列开发中有着举足轻重的作用,一个显而易见的作用是底层 API 的跨平台能力。例如 iOS 开发平台的 CGFloat 定义: #if defined(__LP64__) && __LP64__ #define CGFLOAT_TYPE double #else #define CGFLOA…