iPhone ARC 宏定义
2013-05-16 10:45
155 查看
有时我们写个代码开源出来给别人用时,会被其他开发者抱怨编译不了,很多情况是版本的问题,尤其现在ARC的出现后关于weak,strong的问题让人头疼。 有个开源代码这里做的很不错,就是MBProgressHUD 看下他是怎么做的: #ifndef MB_STRONG #if __has_feature(objc_arc) #define MB_STRONG strong #else #define MB_STRONG retain #endif #endif #ifndef MB_WEAK #if __has_feature(objc_arc_weak) #define MB_WEAK weak #elif __has_feature(objc_arc) #define MB_WEAK unsafe_unretained #else #define MB_WEAK assign #endif #endif 非ARC的retain,相当于ARC的strong iOS5的ARC中weak能在销毁时自动赋值nil,这是iOS4.x上使用ARC不具备,所以用的unsafe,非ARC自然是assign |
相关文章推荐
- iPhone ARC 宏定义
- iPhone ARC 宏定义
- iPhone开发之深入浅出 (4) — ARC之循环参照
- iPhone开发之深入浅出 (7) — ARC总结
- iphone 自动引用计数(ARC)
- iPhone开发之深入浅出 (7) — ARC总结
- iPhone开发之深入浅出 (1) — ARC是什么
- iPhone开发之深入浅出 (2) — ARC之@property使用
- iPhone开发之深入浅出 --- ARC
- iPhone开发之深入浅出 (4) — ARC之循环参照
- iPhone开发之深入浅出 (1) — ARC是什么
- iPhone开发之深入浅出 (5) — ARC之Outlet与弱引用
- iOS 静态库中使用宏定义区分iPhone模拟器与真机---备用
- iPhone开发之深入浅出 (2) — ARC之@property使用
- iPhone开发之深入浅出 (7) — ARC总结
- iphone 用宏定义来判断当前的版本。
- iPhone开发之深入浅出 (1) — ARC是什么
- iPhone开发之深入浅出 (5) — ARC之Outlet与弱引用
- iPhone开发之深入浅出 (4) — ARC之循环参照
- iPhone开发之深入浅出 (6) — ARC之对象转型