1.dispatch_block_t
系統(tǒng)已經(jīng)定義
dispatch_block_t定義如下:
typedef void (^dispatch_block_t)(void);
2.FOUNDATION_EXPORT
我們經(jīng)常開發(fā)的時候會定義一些常量之類的考蕾,我們會用到 #define
eg:
#define AFURLSessionDidInvalidateNotification @"com.alamofire.networking.session.invalidate"
FOUNDATION_EXPORT 定義
//.h定義
FOUNDATION_EXPORT NSString * const AFURLSessionDidInvalidateNotification;
//.m賦值
NSString * const AFURLSessionDidInvalidateNotification = @"com.alamofire.networking.session.invalidate";
使用FOUNDATION_EXPORT
方法在檢測字符串的值是否相等的時候效率更快.
可以直接使用(string == AFURLSessionDidInvalidateNotification)
來比較, 而#define則使用的是([string isEqualToString: AFURLSessionDidInvalidateNotification])
哪個效率更高,顯而易見了
FOUNDATION_EXPORT
是直接比較指針地址
#define
是一一比較字符串的每一個字符是否相等.