NS_DESIGNATED_INITIALIZER // ?指定的初始化方法
// 注解:
每個(gè)類可以有多個(gè)init方法涌哲,設(shè)置某個(gè)初始化方法為指定的初始化方法后趣竣,所有的init方法最后都會(huì)調(diào)用到該指定的初始化方法
NS_ASSUME_NONNULL_BEGIN // 開始認(rèn)為非空
// ?注解:
此區(qū)間所有屬性及方法默認(rèn)都是nonnull類型,如果需要聲明為nullable類型,需要指定屬性為nullable
NS_ASSUME_NONNULL_END // 結(jié)束認(rèn)為非空
DEPRECATED_ATTRIBUTE // ?廢棄屬性
#pragma clang diagnostic push // ?忽略xxx警告
#pragma clang diagnostic ignored "-xxx"http:// ?xxx為警告名稱
// ?注解:
此區(qū)間方法中的xx警告將被忽略
#pragma clang diagnostic pop
FOUNDATION_EXPORT // ?常量定義
// ?注解:
定義過的字符串可以直接使用"=="進(jìn)行比較