iOS中 nil Nil NULL NSNull 之间的区别

nil: 是对OC对象赋空值。

对于Objective-C 集合类对象 比如数组对象,字典对象,当我们不需要再使用他们的时候,对他们release 的同时最好也把他们赋值为nil,这样确保安全性,如果不赋值nil,可能导致程序崩溃。编程的时候对集合类对象先赋值为nil,再将其release这样可以保证程序安全性,苹果官方例子中也看到过在viewDidUnload把对象赋值nil,然后在dealloc方法中将他们release。

Nil: A null pointer to an Objective-Cclass.表示对类进行赋空值。

NULL: A null pointer to anything else,  isforC-style memory pointers.用于对非对象指针赋空值,比如C指针。

NSNull: 对于像NSArray这样的类型,nil或NULL不能做为加到其中的Object,如果定义了一个NSArray,为其分配了内存,又想设置其中的内容为空,则可以用[NSNULL null]返回的对象来初始化NSArray中的内容。

你可能感兴趣的:(iOS中 nil Nil NULL NSNull 之间的区别)