iOS几种宏定义

本文探讨了iOS开发中的宏定义,包括不带参数、带参数、函数式和block式的宏定义,强调了它们如何提升开发效率。同时,文章通过一个实际问题——宏定义与方法名冲突导致的错误,解释了调试过程中遇到的问题及其解决方案。
摘要由CSDN通过智能技术生成
  1. 不带参数
//获取底部安全区域高度(主要针对iPhoneX等设备)
//safeAreaInsets 该方法iOS 11之后新加入的接口
#define BottomSaveHeight [[[UIApplication sharedApplication] delegate] window].safeAreaInsets.bottom
  1. 带参数
// 弱引用自身 block中调用自身需要弱引用避免循环引用
#define Weakself(weakSelf) __weak typeof(&*self) weakSelf = self;
// LLVM老版编译器typeof(self)会报错,所以这样处理 typeof(&*self),现在不会了
#define Weakself(weakSelf) __weak typeof(self) weakSelf = self;
======================== 更新于201934=======================
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值