iOS項(xiàng)目中加入宏定義阳啥,可以提高代碼效率
我今天總結(jié)了一下項(xiàng)目中經(jīng)常用到的宏添谊,給大家分享一下,希望各位能夠互相交流苫纤,共同進(jìn)步。
你有一個(gè)蘋果,我有一個(gè)梨卷拘,我們各拿出一半交換一下喊废,兩個(gè)人都能吃到兩種水果的味道。
你有一個(gè)艾迪兒栗弟,我有一個(gè)艾迪兒污筷,交換一下每個(gè)人都有兩個(gè)艾迪兒。
廢話不多說(shuō)乍赫,上代碼
#define kApplicationWidth [[UIScreen mainScreen] bounds].size.width//屏幕寬度
#define kApplicationHeight [[UIScreen mainScreen] bounds].size.height//屏幕高度
/**
* 保證返回值部位nil
*/
// 對(duì)字符串做特殊的宏瓣蛀,即保證返回的值不為空
#define ISNIL(x) ((x) == nil ? @"" : (x))
#define ISNILDefault(x, y) ((x) == nil ? y : (x))
#define ISNULL(x) ((x) == nil || [(x) isEqualToString:@"null"] ? @"" : (x))
/**
* RGB顏色
*/
#define kColor(r, g, b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1.0]
1)輸出日志是會(huì)大量損耗系統(tǒng)性能
2)輸出的信息很容易會(huì)被截取到,導(dǎo)致信息不安全雷厂。
使用如下的宏定義可以在debug模式下獲得打印信息惋增,release模式下
不會(huì)打印
/**
* 可打印出打印的行數(shù)和
*/
#ifndef __OPTIMIZE__
#define BXLog(x, ...) NSLog(@"%s %d行: " x, __FUNCTION__, __LINE__, ##__VA_ARGS__)
#else
#define BXLog(...) /* */
#endif