NS_ASSUME_NONNULL_BEGIN 和 NS_ASSUME_NONNULL_END的使用
首先先认识两个特性:__nullable和__nonnull,从字面上看,__nullable表示对象可以是NULL或nil,而__nonnull表示对象不能为空,当我们不遵守这一规则时,编译器就会警告(⚠️)事实上,在任何可以使用const关键字的地方都可以使用__nullable和__nonnull,不过这两个关键字仅限于使用在指针类型上,其实是为了配合swift使用出现的,因为swift有可