nil,Nil,NULL,NSNull,kCFNull 的区别
- nil Objective-C实例对象指针空值: NSSring *str = nil;
#define nil ((void*)0)复制代码
- Nil 类对象指针空值: Class class = Nil;
#define nil ((void*)0)复制代码
- NULL C指针空值: char *p = NULL;
#define NULL ((void*)0)复制代码
- NSNull 是一个Objective-C继承NSObject的类,多用于数组字典里面的空值
@interface NSNull : NSObject <NSCopying, NSSecureCoding> + (NSNull *)null; @end复制代码
- kCFNull 是NSNull的单例 [NSNull null]
typedef const struct CF_BRIDGED_TYPE(NSNull) __CFNull * CFNullRef; const CFNullRef kCFNull; // the singleton null instance复制代码